扩展面板中的两个分组框,如何正确设置调整大小(拉伸和固定)?

米克

我有一个非常基本的布局,但仍然无法获得我想要的行为。愚蠢的我...

我的网格有两列,左为动态尺寸列,右为固定尺寸列。可以了 在右列中,我有一个包含两个按钮的堆栈面板,它们按照窗口的大小正确调整。

在左列中,我具有包含两个组框的扩展面板,下部面板具有固定的高度,并停靠在底部。就像我想要的那样,此组框跟随窗口的大小正确调整。

但是我无法获得上方的分组框来填充dockpanel的上部。我只能将其高度设置为固定,或者将其设置为“自动”时,其高度会变得奇怪,为23 ...?我希望它填充区域并按照窗口大小调整。我也尝试在本专栏中使用stackpanel,但没有成功。

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition/>
        <ColumnDefinition Width="220"/>
    </Grid.ColumnDefinitions>        
    
    <DockPanel x:Name="GroupPanel"  Grid.Column="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
        <GroupBox x:Name="AlarmGroup" Header="Alarms" Margin="10"  DockPanel.Dock="Top" />
        <GroupBox x:Name="LogGroup" Header="Log" Height="188" Margin="10" VerticalAlignment="Bottom" />
    </DockPanel>
    
    <StackPanel x:Name="ButtonPanel" Width="190" Grid.Column="1">
        <Button x:Name="StartButton" DockPanel.Dock="Right" Width="150" Height="40" VerticalAlignment="Top" Margin="0,20,10,0">Start</Button>
        <Button x:Name="StopButton" DockPanel.Dock="Right" Width="150" Height="40" VerticalAlignment="Top" Margin="0,10,10,0">Stop</Button>
    </StackPanel>
    
</Grid>
达科他·梅思文(Dakota Methvin)

默认情况下,DockPanel使用最后一个子项填充其剩余空间。

您已将设置AlarmGroup GroupBox为第一个孩子,因此它仅占用所需的空间。这是默认值第二个孩子的高度固定,因此不会占用其余空间。

要获得所需的布局,请先LogGroup成为的第一个孩子,GroupPanel然后将其DockPanel.Dock属性设置Bottom

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition/>
        <ColumnDefinition Width="220"/>
    </Grid.ColumnDefinitions>

     <DockPanel x:Name="GroupPanel">
        <GroupBox x:Name="LogGroup" Header="Log"
                  DockPanel.Dock="Bottom"
                  Height="188" Margin="10"/>                
        <GroupBox x:Name="AlarmGroup" Header="Alarms" 
                  DockPanel.Dock="Top"
                  Margin="10"/>
    </DockPanel>

    <StackPanel x:Name="ButtonPanel" 
                Width="190" 
                Grid.Column="1">    
        <Button x:Name="StartButton" 
                Width="150" Height="40" 
                VerticalAlignment="Top"
                Margin="0,20,10,0">Start</Button>
        <Button x:Name="StopButton" 
                Width="150" Height="40" 
                VerticalAlignment="Top" 
                Margin="0,10,10,0">Stop</Button>    
    </StackPanel>
</Grid>

结果

WPF应用

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

面板在表单中的对接。在调整大小时使两个面板“固定”

更改框架尺寸时如何添加两个面板并调整其大小?

如何使停靠面板中的文本对齐和拉伸正确?

如何在两个固定属性之间调整DIV的大小

CSS怀疑内联调整两个框的大小

在调整大小时将两个框居中

如何在WPF中为两个文本框网格动态设置字体大小

在窗口调整大小时调整两个图片框的大小

如何在QT Designer中调整分组框的大小

如何在Cinnamon中同时调整两个窗口的大小?

如何通过焦点调整屏幕中两个片段的大小?

创建由R中的两个分组变量分组的数据集的多面板图

如何通过裁剪两个图像中不需要的区域来调整蒙版和 RGB 图像的大小以匹配

如何在一个JFrame中设置两个JPanel的大小?

Flutter中的Flex中的固定(灵活)和拉伸(扩展)元素

当另一个面板正在动态移动Java swing时,如何自动正确调整面板的大小

如何遍历两个大小不同的数据框?

比较两个日期框和设置值

固定大小容器中的3个div:固定大小的容器2个,应拉伸1个

如何调整图像大小而不会拉伸和变形

如何在相对布局中水平设置两个文本视图相等的大小

jQuery如何从字典中过滤两个日期和时间,并在新数组上分组

如何正确设置Vuetify框架的两个导航抽屉?

如何在Android中正确设置两个按钮

AngularJs相应地调整/调整两个div的大小

尝试在数据框中按两个标准查找 YOY 百分比变化和分组

如何在uwp的xaml中拉伸/调整svg的大小?

如何同时扩展和实现两个库?

如何使用CSS固定宽度和自动调整大小来设置div的样式?