我有一个面板,里面有一些按钮。我希望如果面板尺寸发生变化,按钮位置也会改变。
例如,如果面板减小5px,按钮位置x将减少5 px到...
我该怎么做? 感谢
答案 0 :(得分:0)
您可以使用anchor属性来定义控件在调整其父控件的大小时自动调整大小的方式。
答案 1 :(得分:0)
的WinForms: 使用Anchor属性,您可以在调整面板大小时调整按钮的大小。但如果您需要更改位置,那么我担心您必须在代码中执行此操作,例如当你的表格调整大小时。下面的示例将按钮放在表格宽度的第10位。
private void Form1_Resize(object sender, EventArgs e)
{
this.button1.Location = new Point(this.Width / 10, this.button1.Location.Y);
}
WPF: 在WPF中,您可以使用具有两列的网格在XAML中执行此操作。您将按钮放在第二列。第一列将作为一种缓冲区,使按钮远离应用程序的边缘。有人认为 - 列的大小必须描述为一个比例,即使用星号(“*”)。在下面的代码中,按钮始终位于网格宽度的第10位
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="9*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button
Grid.Column="1" Margin="10"/>
</Grid>
答案 2 :(得分:0)
您可以使用按钮的Anchor
或Dock
属性
这link可以帮助您