更改面板中按钮的位置

时间:2014-04-07 10:39:48

标签: c# button

我有一个面板,里面有一些按钮。我希望如果面板尺寸发生变化,按钮位置也会改变。

例如,如果面板减小5px,按钮位置x将减少5 px到...

我该怎么做? 感谢

3 个答案:

答案 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)

您可以使用按钮的AnchorDock属性 这link可以帮助您