Windows8应用布局控制实例分享

【菜科解读】
Windows 8布局控件
在Windows Store应用设计中,布局控件是控制对象位置和尺寸的,由于Windows Store应用不仅仅面向桌面操作系统,而且还需要适应移动设备的部署,所以在设计时,往往需要考虑到不同的分辨率或者硬件屏幕尺寸标准下应用布局的适配性,最大程度的保持设计灵活性是应用设计原则重要环节之一。
根据功能性不同,Windows 8为开发人员提供丰富的布局控件,以达到应用布局设计需求。
其中包括:
Grid
Canvas
StackPanel
WrapGrid
VariableSized WrapGrid
Virtualizing StackPanel
从MSDN开发文档中可以看出,以上布局控件皆派生自Panel类,而Panel类可以装载不同类型的控件作为子控件。
而熟悉Silverlight,WPF和Windows Phone的开发人员会发现一些布局控件是相同的。
下面我们快速浏览这些布局控件的效果以及使用方法,
Grid
Grid是类似于HTML表格的一种布局控件,由于其灵活性高,所以在应用设计中经常被使用到。
一个Grid控件包含一个Row(行)和Column(列)的集合。
开发人员可以将不同的对象控件布置在不同的行列中,达到位置控制的效果。
基本代码:
表格定义代码:
在以上代码中,Grid.RowDefinitions和Grid.ColumnDefinitions集合使用RowDefinition和ColumnDefinition定义两行两列的Grid,这里使用附加属性RowDefinitions描述行列集合。
(附加属性(Attached Property)XAML重要概念,详细请参考XAML实例教程系列)
后台代码声明行和列集合 :
Grid.RowDefinitions = new List();Grid.ColumnDefinitions = new List();完成表格的定义,将控件对象放在指定的表格位置,例如在第一行第一列添加一个TextBlock文本框,代码如下:
从代码中可以看出,因为在TextBlock中,没有实现Row和Column的属性,所以放置控件对象到表格是通过附加属性Grid.Row和Grid.Column实现的。
通过附加属性和依赖属性的概念,可以理解通过Grid可以存取其所有的子控件。
在完成控件的位置控制后,下面来看看尺寸控制,Grid有三种常见尺寸控制方法:
1.绝对尺寸控制, 该方法是直接设置固定的宽度和高度值,其局限性比较大,例如,定义行高50像素,列宽150像素的表格,代码如下:
2.相对尺寸控制,该方法使用"*"符号作为宽或高的值,其含义是控件对象将占据布局控件中剩余所有有效空间。
由于是由星型标志组成,所以也可以称为星型尺寸控制。
该方法可以灵活控制表格的宽度和高度,所以在布局设计中非常实用。
例如:定义一个第一行是第二行高度两倍的表格,其代码如下:
以上代码无论第一行控件占据空间多少,都永远是第二行的两倍高度。
例如,如果Grid高度为600像素,那么第一行则被分配400px,第二行则是200px。
如果在以上表格中添加一个3*,其表格比率则为3:2:1, 则行高度将被分配为300px, 200px, 100px.
3.自动尺寸控制, 设置宽度和高度为“Auto”,该方法将根据控件对象的高度和宽度自动调节分配表格高度和宽度,该控制方式经常与相对尺寸控制配合使用。
例如下面的代码,第一行高度将根据控件的高度自动分配,而第二行高度则取剩余布局控件高度值。
Canvas
Canvas被称为最简单的布局控件,其使用绝对位置控制对象的位置。
声明定义Canvas后,对象使用附加属性Canvas.Left 和 Canvas.Top设置相对左距离和上距离,以达到控制对象显示位置的目的。
另外Canvas还提供了ZIndex属性定义控件Z坐标,如果有两个控件重叠覆盖,则ZIndex值越大的控件显示在上方。
实例代码:
StackPanel
StackPanel控件被称为堆栈面板,也被称为列表控件,该控件没有行或者列的概念,只有水平对齐和垂直对齐的概念。
在StackPanel中使用Orientation属性设置内部对象的对齐方式。
但是由于StackPanel对于内部对象位置控制较为直接和简单,通常来说,需要使用Margin属性调节对象的间距。
实例代码:
WrapGrid
WrapGrid可以理解为特殊的Grid,普通的Grid是通过行和列制定对象的位置,而WrapGrid是根据对象集合的尺寸的不同显示不同的效果。
WrapGrid的子控件集合类型是ItemsControl,按照从左到右,从上到下的顺序展示集合中的子元素到用户界面,当元素到达WrapGrid最右边或者最下边,将自动开始新的行或者列继续展示剩余的子元素,直到列举所有元素完成。
在WrapGrid中,使用Orientation控制子元素显示方向,默认情况下,将以垂直的方式展示。
VariableSizedWrapGrid
VariableSizedWrapGrid控件和StackPanel非常类似,其布局效果是从左到右从上到下展示布局内子元素。
与StackPanel不同的是VariableSizedWrapGrid控件子元素到达右边界或下边界是将自动切换新行或者列继续展示子元素,直到达到MaximumRowsOrColumns值或者所有子元素展示完毕。
该控件可以通过VariableSizedWrapGrid.RowSpan 和 VariableSizedWrapGrid.ColumnSpan附加属性跨行或跨列显示子对象元素。
另外值得注意的是,正如VariableSizedWrapGrid名字所言,VaribaleSized,其含义是每个Cell单元会根据子控件内容的不同动态填充尺寸。
测试文本1实例代码:
VirtualizingStackPanel
VirtualizingStackPanel是一款同样类似于StackPanel的布局控件,与StackPanel不同的是VirtualizingStackPanel在数据绑定后仅显示当前绑定项,而并非全部数据集合。
这样的绑定显示方式在载入超大数据量时,性能差异非常明显,VirtualizingStackPanel数据载入比StackPanel快出数十倍,其内存占有率非常低。
VirtualizingStackPanel很少被用于独立控件效果,经常会配合ListBox,ComboBox等ItemsControl使用,主要用于大数据量绑定。
Border
Border是最后要提及的布局控件,由于它不是派生自Panel类,所以放在最后讲述。
Border是Windows store应用中常见的布局控件之一,主要目的是显示一个边框在一个或者多个对象外围。
开发人员可通过Border属性控制其边框效果以及显示位置等。
实例代码:
[Win7和Win8操作系统的比较及应用指南]
软件支持 在线重装、U盘制作、自定义重装 等多种模式。
简介:Win7和Win8是微软公司推出的两个非常受欢迎的操作系统,它们在界面设计、功能和性能方面都有一定的差异。
本文将比较这两个操作系统的优劣,并为读者提供应用指南,帮助他们选择合适的操作系统。
工具原料:本文所使用的电脑品牌型号为戴尔XPS 13,操作系统版本为Windows 10 Pro,软件版本为Microsoft Office 2019。
正文:一、界面设计Win7和Win8的界面设计有着明显的差异。
Win7沿用了经典的Windows界面,具有较为传统和稳定的风格。
而Win8则采用了全新的Metro界面,更加注重触摸屏的操作特性。
从界面设计角度来说,Win7比较适合那些喜欢传统风格、不喜欢变化的用户;而Win8则更适合具有先进科技追求的用户,尤其是那些使用触摸屏设备的用户。
二、功能在功能方面,Win7和Win8都具备了常用的办公、娱乐和互联网功能。
不过,Win8相较于Win7,在应用商店和软件兼容性方面有着明显的优势。
Win8的应用商店提供了大量的应用程序和游戏,用户可以方便地下载和安装。
同时,Win8还优化了触屏操作和多任务处理的功能,提升了用户体验。
三、性能Win7和Win8的性能也有着一定的差异。
Win7的系统要求较低,对硬件要求不高,在老旧设备上运行良好。
而Win8则更适合搭载高配置硬件的设备,以发挥其更强的性能。
因此,如果你的电脑配置较低,Win7可能是更好的选择;但如果你追求更流畅的操作体验和更快的速度,那么Win8可能更适合你。
总结:通过本文的比较和应用指南,我们可以得出以下结论:选择Win7还是Win8取决于个人需求和偏好。
如果你更喜欢传统风格的界面,对触摸屏操作不感兴趣,或者你的电脑配置较低,那么Win7是一个不错的选择。
而如果你喜欢时尚、先进的界面,追求更好的应用和游戏资源,或者你的设备配置较高,那么Win8可能更适合你。
最重要的是,无论选择哪个操作系统,我们都要根据自己的需求合理使用,并不断学习和适应新的技术和功能。
标签: 注意:本站所刊载的文章均为学习交流之用,请勿用于商业用途。
对于商业使用,请联系各自版权所有者,否则法律问题自行承担。
Win7系统升级指南:全面解析升级步骤与要点 Win7系统损坏修复教程:详细步骤助你快速解决问题 [Win7和Win8操作系统的比较及应用指南] 分类于: 回答于:2023-10-21 简介:Win7和Win8是微软公司推出的两个非常受欢迎的操作系统,它们在界面设计、功能和性能方面都有一定的差异。
本文将比较这两个操作系统的优劣,并为读者提供应用指南,帮助他们选择合适的操作系统。
工具原料:本文所使用的电脑品牌型号为戴尔XPS 13,操作系统版本为Windows 10 Pro,软件版本为Microsoft Office 2019。
正文:一、界面设计Win7和Win8的界面设计有着明显的差异。
Win7沿用了经典的Windows界面,具有较为传统和稳定的风格。
而Win8则采用了全新的Metro界面,更加注重触摸屏的操作特性。
从界面设计角度来说,Win7比较适合那些喜欢传统风格、不喜欢变化的用户;而Win8则更适合具有先进科技追求的用户,尤其是那些使用触摸屏设备的用户。
二、功能在功能方面,Win7和Win8都具备了常用的办公、娱乐和互联网功能。
不过,Win8相较于Win7,在应用商店和软件兼容性方面有着明显的优势。
Win8的应用商店提供了大量的应用程序和游戏,用户可以方便地下载和安装。
同时,Win8还优化了触屏操作和多任务处理的功能,提升了用户体验。
三、性能Win7和Win8的性能也有着一定的差异。
Win7的系统要求较低,对硬件要求不高,在老旧设备上运行良好。
而Win8则更适合搭载高配置硬件的设备,以发挥其更强的性能。
因此,如果你的电脑配置较低,Win7可能是更好的选择;但如果你追求更流畅的操作体验和更快的速度,那么Win8可能更适合你。
总结:通过本文的比较和应用指南,我们可以得出以下结论:选择Win7还是Win8取决于个人需求和偏好。
如果你更喜欢传统风格的界面,对触摸屏操作不感兴趣,或者你的电脑配置较低,那么Win7是一个不错的选择。
而如果你喜欢时尚、先进的界面,追求更好的应用和游戏资源,或者你的设备配置较高,那么Win8可能更适合你。
最重要的是,无论选择哪个操作系统,我们都要根据自己的需求合理使用,并不断学习和适应新的技术和功能。
菜科网系统致力于解决 Windows 系统重装解决方案,提供高效、安全、免费的系统重装服务。
《伊克西翁IXION》建筑布局