加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 调整父窗口大小时的WPF大小调整/对齐按钮

发布时间:2020-12-16 01:50:12 所属栏目:百科 来源:网络整理
导读:我正在编写我的第一个 WPF应用程序,当窗口最大化时,我在调整按钮大小/对齐按钮方面遇到了一些问题. 基本上我的应用程序顶部有一排大按钮.目前他们在Canvas中,但我也尝试过Grid和Stackpanel.每当我最大化(或者实际上只是扩展我的窗口)时,按钮基本上都停留在同
我正在编写我的第一个 WPF应用程序,当窗口最大化时,我在调整按钮大小/对齐按钮方面遇到了一些问题.

基本上我的应用程序顶部有一排大按钮.目前他们在Canvas中,但我也尝试过Grid和Stackpanel.每当我最大化(或者实际上只是扩展我的窗口)时,按钮基本上都停留在同一个地方.我想要的是重新定位按钮相对于其父容器,或拉伸按钮宽度以适应更改.

任何人都可以就什么是最好的容器和方法提供建议?我看过Canvas.Top/Left,HorzontalAlignment,Margin等,但我似乎无法找到正确的组合.

谢谢.

解决方法

WPF的方法是在MainGrid中对齐所有内容.
如果你把Button 1放在例如Grid.Row 3和Grid.Column 2中,它将保留在那里.

如果更改窗口大小,网格会调整大小,但控件仍保留在原位.
您还可以使网格行/列固定宽度,自动调整大小或百分比.

与您的控件相同.所以知道这一点,这只是一个玩弄它的问题.

这是一个例子.只需使用宽度:

<Grid x:Name="LayoutRoot" Background="White">
    <Grid.RowDefinitions>
        <RowDefinition Height="43*" />
        <RowDefinition Height="222*" />
        <RowDefinition Height="35*" />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="113*" />
        <ColumnDefinition Width="168*" />
        <ColumnDefinition Width="119*" />
    </Grid.ColumnDefinitions>
    <Button Content="TEST" Grid.Column="2" Grid.Row="1" 
     HorizontalAlignment="Stretch"  VerticalAlignment="Stretch" />
</Grid>

做一些自动,做一些修复,最后你会理解目标.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读