从这篇文章开始是对WPF中的界面如何布局做一个较简单的介绍,大家都知道:UI是做好一个软件很重要的因素,如果没有一个漂亮的UI,功能做的再好也无法吸引很多用户使用,而且没有漂亮的界面,那么普通用户会感觉这个软件没有多少使用价值。一. 总体介绍 W ...
从这篇文章开始是对WPF中的界面如何布局做一个较简单的介绍,大家都知道:UI是做好一个软件很重要的因素,如果没有一个漂亮的UI,功能做的再好也无法吸引很多用户使用,而且没有漂亮的界面,那么普通用户会感觉这个软件没有多少使用价值。
一. 总体介绍
WPF的布局控件都在System.Windows.Controls.Panel这个基类下面,使用 WPF提供的各种控件在WPF应用程序中界面进行布局,同时对各种子控件(如按钮、文本框,下拉框等)进行排列组合。
Pane类的公共属性太多了。就简单介绍几个常见的属性如下表。
| 名称 | 说明 |
| Cursor | 获取或设置在鼠标指针位于此元素上时显示的光标。 |
| DataContext | 获取或设置元素参与数据绑定时的数据上下文。 |
| Dispatcher | 获取与此 DispatcherObject 关联的 Dispatcher。 |
| FontFamily | 获取或设置控件的字体系列。 |
| FontSize | 获取或设置字号。 |
| FontWeight | 获取或设置指定的字体的权重或粗细。 |
| Foreground | 获取或设置描述前景色的画笔。 |
| HandlesScrolling | 获取一个值控件是否支持滚动。 |
| Height | 获取或设置元素的建议高度。 |
| HorizontalContentAlignment | 获取或设置控件内容的水平对齐。 |
| IsLoaded | 获取一个值,该值指示是否已加载此元素以供呈现。 |
| IsMouseOver | 获取一个值,该值指示鼠标指针是否位于此元素(包括可视树上的子元素)上。这是一个依赖项属性。 |
| IsTabStop | 获取或设置一个值控制是否在选项卡上导航包含。 |
| IsVisible | 获取一个值,该值指示此元素在用户界面 (UI) 中是否可见。这是一个依赖项属性。 |
| LayoutTransform | 获取或设置在执行布局时应该应用于此元素的图形转换方式。 |
| Margin | 获取或设置元素的外边距。 |
| Name | 获取或设置元素的标识名称。 该名称提供一个引用,以便当 XAML 处理器在处理过程中构造标记元素之后,代码隐藏(如事件处理程序代码)可以对该元素进行引用。 |
| Opacity | 获取或设置当 UIElement 在用户界面 (UI) 中呈现时为其整体应用的不透明度因子。这是一个依赖项属性。 |
| Padding | 获取或设置控件中的空白。 |
| RenderTransform | 获取或设置影响此元素的呈现位置的转换信息。这是一个依赖项属性。 |
| TabIndex | 获取或设置使用 tab 键时,确定顺序接收焦点的元素的值,当用户将控件定位。 |
| Tag | 获取或设置任意对象值,该值可用于存储关于此元素的自定义信息。 |
| ToolTip | 获取或设置在用户界面 (UI) 中为此元素显示的工具提示对象。 |
| TouchesCaptured | 获取在此元素上捕获的所有触摸设备。 |
| TouchesCapturedWithin | 获取在此元素或其可视化树中的任何子元素上捕获的所有触摸设备。 |
| VerticalContentAlignment | 获取或设置控件内容的垂直对齐方式。 |
| Visibility | 获取或设置此元素的用户界面 (UI) 可见性。这是一个依赖项属性。 |
| VisualOpacityMask | 获取或设置 Brush 值,该值表示 Visual 的不透明蒙板。 |
| Width | 获取或设置元素的宽度。 |
一个Panel 的呈现就是测量和排列子控件,然后在屏幕上绘制它们。所以在布局的过程中会经过一系列的计算,那么子控件越多,执行的计算次数就越多,则性能就会变差。如果不需要进行复杂的布局,则尽量少用复杂布局控件(如 Grid和自定义复杂的Panel);如果能简单布局实现就尽量使用构造相对简单的布局(如 Canvas、UniformGrid等),这种布局可带来更好的性能。 如果有可能,我们应尽量避免调用 UpdateLayout方法。
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:WPF入门教程系列六——布局介绍与Canvas(一)
关键词:wpf
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。