1

我创建了一个小型应用程序,我希望当我的窗口(WPF)最大化时,它的控件也会根据窗口大小调整大小。我试过这个代码 -

 If Me.WindowState = Windows.WindowState.Maximized Then
        Me.WindowState = Windows.WindowState.Normal
        Me.Width = 820
        Me.Height = 440
        Me.Grid1.Width = 780
        Me.Grid1.Height = 400
        Me.StackPanel1.Height = 360
        Me.StackPanel1.Width = 140
        Me.StackPanel2.Height = 360
        Me.StackPanel2.Width = 600
 Else If Me.WindowState = Windows.WindowState.Normal Then
        Me.WindowState = Windows.WindowState.Maximized
        'Me.Width = 1350
        'Me.Height = 600
        Me.Grid1.Width = 1300
        Me.Grid1.Height = 600
        Me.StackPanel1.Height = 460
        Me.StackPanel1.Width = 200
        Me.StackPanel2.Height = 460
        Me.StackPanel2.Width = 800
4

3 回答 3

1

为什么不能将控件包装在 Grid 中?当您使用 * 设置列宽和行高时,只要调整窗口大小,它就会改变列和行大小。此外,控件应将 Horizo​​ntalAlignment 和 VerticalAlignment 设置为 Stretch。

于 2013-08-07T06:05:32.577 回答
0

您可以直接从 XAML 执行此操作:在复杂情况下使用 Horizo​​ntalAlignment/VerticalAlignment 属性或绑定到元素的 Width/Height。这是我的项目中的示例:

<GroupBox .... Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=TreeView, AncestorLevel=1}, Path=ActualWidth}">
于 2013-08-07T06:05:39.630 回答
0

您应该使用表格布局面板,并在其中记录您的控件!

于 2013-08-07T06:31:47.413 回答