XAML(Extensible Application Markup Language),可扩展应用程序标记语言的使用使得C#桌面应用程序开发前后端实现真正分离。前端人员可使用该标记语言定义软件的外观,样式与布局。使得程序开发人员更加专注于业务逻辑功能编程。本文主要通过案例项目首页面设计描述对XMAL页面布局进行简单说明。
XAML页面布局技术
XAML本质与XML(可标记扩展语言)类似,它有着HTML的外观,又揉合了XML语法的本质。即可通过标记实现对页面元素进行定义与描述。实现如上效果页面布局所涉及到的标记主要描述如下:
1.DockPanel标记:该标记支持元素停留在整个窗口内容区域指定位置,本例中我们的菜单项与status状态项均使用DockPanel标记使之停留在顶部与底部。
2.grid标记:该标记主要使用网格实现页面布局划分,通过使用Row行与Column列实现页面网格定义,在定义好的网格中再去添加对应元素;
3.Menu标记:该标记为菜单标记,用于定义菜单及菜单项;其中MenuItem为菜单项,菜单项支持嵌套;
4.StatusBar标记:该标记为状态栏目标记,用于呈现程序底部状态栏;
项目实例代码
使用XAML标记语言进行页面设计,需要在项目对应窗体页面文件中找到扩展名为xaml的文件,其根元素为Window,在该标记下进行页面元素定义与布局。
本例首页面布局适用DockPanel元素进行布局,因此最外层元素为DockPanel元素,如下所示:
整体页面布局代码如上图所示,通过该布局代码可知,页面内容主要包括menu(菜单),StatusBar(状态栏)与Gird(用于背景布局)三部分所组成。
Menu部分主要用于实现软件菜单项设计,本例设计菜单描述如下:
程序Main主页面设计菜单一级目录包括教师管理、人才培养方案管理及科研大赛等10类菜单项。通过菜单元素嵌套进一步设计各菜单项子元素。如教学任务管理子菜单设计描述如下:
状态栏主要是指软件底部用于显示特定信息的元素,本例设计状态栏主要显示软件版权信息与系统时间信息,状态栏设计代码如下:
本例最后一部分为窗口整体背景部分,主要使用Grid.Background属性进行设置,实现代码如下:
以上给出软件Main页面主要布局与元素定义,测试运行效果如下图所示:
本头条号长期关注编程资讯分享;编程课程、素材、代码分享及编程培训。如果您对以上方面有兴趣或代码错误、建议与意见,可在评论区回复。更多程序设计相关教程及实例分享,期待大家关注与阅读!系列文章链接如下:
WPF信息管理系统项目实战教程一:用户需求UML建模