WPF中调整控件相对位置的属性有很多,比较常见的属性比如:HorizontalAlignment、HorizontalContentAlignment、VertialAlignment、VerticalContentAlignment。

 

到底如何使用呢?以下以HorizontalAlignment和HorizontalContentAlignment为例来说明。

 

--->HorizontalAlignment/VerticalAlignment,指自身相对于父元素的位置。

 

--->HorizontalContentAlignment/VerticalContentAlignment,指子元素在自身元素中的相对位置。这里之前一直以为,只有内容控件(ContentControl或其子类)才能设置该属性,实际上不仅仅是ContentControl,还有其它一些元素也有(比如TextBox、Slider......)。不过,最常用的TextBlock控件式没有HorizontalContentAlignment/VerticalContentAlignment属性的。

 

以下是一些常见元素的默认HorizontalContentAlignment/VerticalContentAlignment的默认值。

 

元素名     HorizontalContentAlignment / VerticalContentAlignment

 

Button – Center, Center

 

Calendar – Left, Top

 

CheckBox – Left, Top

 

ComboBox – Left, Top

 

ContextMenu – Left, Center

 

DataGrid – Left, Top

 

DatePicker – Stretch, Top

 

Expander – Stretch, Stretch

 

GroupBox – Left, Top

 

Label – Left, Top

 

ListBox – Left, Center

 

Menu – Left, Top

 

PasswordBox – Left, Top

 

ProgressBar – Left, Top

 

RadioButton – Left, Top

 

RepeatButton – Center, Center

 

RichTextBox – Left, Top

 

Slider – Left, Top

 

StatusBar – Left, Top

 

TabControl – Center, Center

 

TextBox – Left, Top

 

TreeView – Left, Center

 

此外,需要注意的是,对于有些元素在特定环境下来讲,设置HorizontalAlignment/VerticalAlignment是无效的。

 

比如:论文网

 

(1)StackPanel中放置的元素,如果StackPanel的Orientation=Horizontal,那么StackPanel中元素的水平位置都是从左向右排列,无法通过设置 HorizontalAlignment来调整StackPanel内部元素的水平位置。同样,当StackPanel的Orientation=Vertical,那么StackPanel中元素的竖直位置都是从上向下排列,无法通过设置 VerticalAlignment来调整StackPanel内部元素的竖向位置。

 

比如下面的例子,虽然给TextBox设置了VerticalContentAlignment="Bottom",但其仍然位于上部。不过,在另外一个方向,还是可以用 HorizontalAlignment来调整的。

 <StackPanel Background="AliceBlue" Margin="10" Grid.Row="0" Width="400">

            <TextBox Background="LightCoral" HorizontalAlignment="Right" VerticalAlignment="Bottom" Height="50" 

                     VerticalContentAlignment="Bottom" Text="Textbox" Width="200" 

                     HorizontalContentAlignment="Center" Margin="5"/>

        </StackPanel>

上一篇:上海龙凤网被摧毁
下一篇:如何查看端口是否开放

要把什么作为主攻方向

红军长征途中召开的什么会议

预备党员的预备期从什么时候算起

4号海洛因

党在新时代的强军目标是什么

全面准确坚定不移贯彻什么的方针

1978年党的什么召开

一般自我效能感量表(GSES)

风险管理茬呼吸内科护理...

双子座近期桃花运,双子...

高光谱数据稀疏约束分类识别技术研究

检察机關司法會计工作的科學发展【3160字】

论新农村建设中农村基础设施的完善

由造纸黑液制备碳酸钙过程研究

关于白酒的调查问卷表

上海应复中心办公楼施工投标文件

水下纯方位系统目标跟踪算法研究