WPF布局-布局属性(四)

在WPF布局框架中,如果标签不设置布局属性,系统默认为填充模式。当然,我们可以通过一系列标签的属性来达到布局标签的作用。

最常见的属性是Width和Height,是指定标签的宽和高。

MinWidth,MinHeight是指标签的最小宽度和最小高度,即使父容器的宽和高小于这个数字,标签也保持这个值。

MaxWidth,MaxHeight是指标签的最大宽度和最大高度。

最小和最大Width,Height将将会在一个固的区间来调整标签的大小。

HorizontalAlignment是标签在当前容器中左中右的停靠。VerticalAlignment是标签在当前容器中上中下的停靠。这两种停靠都是建立在父容器内的,只有父容器内大于标签是才能看到效果。

Margin,是一个独特的属性,它的值有三种情况,单值,表示该标签距父容器四周的距,两个值,第一个值为标签距父容器左右的距离,第二个值是标签距父器上下的距离,四个值,分别距父容器左,上,右,下的距离。如果存在Width和Height属性,它们的优先级要高于Margin。但一般情况了,两种属性的设置不会同时出现,Width和Height更强调固态的值,Margin强调随性的值,但它距边缘是固定的。

Padding和Margin相似,不同的是Padding是指标签内容与标签边界的距离。

Panel.ZIndex是一个层次的属性,这个值表示标签本身在父容器上位于那一层,值越大,越位于上层。可以用Panel.SetZIndex(标签名, 3);来设置标签元素的层次。

RenderTransofrm是一个缩放的属性,就是对当前标签的直接缩放,例子如下:

<Button Content="123" ;50" Height="20" Click="Button_Click" >

<Button.RenderTransform>

<ScaleTransform ScaleX="0.5" ScaleY="0.5">

</ScaleTransform>

</Button.RenderTransform>

</Button>

C#代码:

button1.RenderTransform = new ScaleTransform(2, 2);

LayoutTransform是一个旋转的属性

<Button Name="button1" Content="123" ;50" Height="20" >

<Button.LayoutTransform>

<RotateTransform Angle="45"></RotateTransform>

</Button.LayoutTransform>

</Button>

C#代码:

button1.LayoutTransform = new RotateTransform(90);

转换的类型还有MatrixTransform,如

<Button Name="button1" Content="123" ;50" Height="20" >

<Button.LayoutTransform>

<MatrixTransform Matrix="3, 1, 1, 3, 0, 0"></MatrixTransform>

</Button.LayoutTransform>

</Button>

C#代码:

button1.LayoutTransform = new MatrixTransform(3, 1, 1, 3, 0, 0);

image

上面的转换是用矩阵的方式实现,下面从x和y轴上来建立转换:

<Button.LayoutTransform>

<SkewTransform AngleX="30" AngleY="30" ></SkewTransform>

</Button.LayoutTransform>

C#代码:

button1.LayoutTransform = new SkewTransform(10, 30, 20, 140);

上面都是布局标签的一些属性,通过这些属性,配合模板,可能使整个程序更加完美统一。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值