EKsumic's Blog

let today = new Beginning();

Click the left button to use the catalog.

OR

C#Winform向WPF过渡入门(二)

总目录:https://www.v2know.com/MainPage/Category/WPF

好的,直接开始说wpf的前台,也是xaml语言的注意点:


1. Window标签里面只允许存在一个Grid标签

即一个窗口只能包含一个元素,

学过Winform的我一开始还以为是Grid是GridView用来导入数据的。


2. 不应当使用坐标来确定Button的位置

这里要说一下,拖入一个Button控件的话,下面的XAML也会跟着自动生成一串标签代码,其中的Margin属性,是以坐标来定义按钮在MainWindow的位置的。

我们不应当这样用Margin="45,52,0,0"这种方式定义,因为在不同的设备上,窗口的大小,控件的位置应当采取相对值。

总结:请不要尝试再用Winform的拖拉拽。


3. 大多是情况下不应当显示定义元素的尺寸

和之前说的一样,相信你也渐渐开始发现了,wpf的设计思路应该是偏向于多设备的。

也许,最终的目标是全平台。

因此,无论如何,在任何情况下,你都不应当直接设置控件的大小。(这里称之为控件,实际上应该称之为元素,因为是在xaml里面)

举一个最直接的案例:

假设你设置了button的大小,那对不起,你的button里面的text不会很聪明得自动换行,它会直接被切断了一样。


正式部分:

我们在Grid标签可以再添加Grid或其它标签,

假设我们添加一个Button,它的xaml是:

<Button HorizontalAlignment="Center" VerticalAlignment="Center" Content="Hello">

你将看到一个完全居中的按钮,它的Text是Hello。(注意,这里再也不用Text属性了,而用Content)

<Button Margin="50" Content="Hello">

你将会看到一个外边距只有50的按钮。(实际上就是快填充完整个MainWindow的按钮)

这个Margin的填值顺序上右下左,还有其它的各种方式是与HTML里面的Margin无异的。


下一篇:关于WPF的5种常用布局容器

This article was last edited at 2020-12-27 19:13:43

* *