如何:创建GridSplitter,自定义DockPanel(C#,WPF)的大小
如何:创建一个GridSplitter,用于自定义DockPanel(C#,WPF)的大小。 这是我的如何:创建GridSplitter,自定义DockPanel(C#,WPF)的大小,c#,wpf,dockpanel,C#,Wpf,Dockpanel,如何:创建一个GridSplitter,用于自定义DockPanel(C#,WPF)的大小。 这是我的GridSplitter代码,但不幸的是它不起作用:我不允许更改网格的大小。我可以看到GridSplitter,但我不能使用它 <DockPanel DockPanel.Dock="Left" Name="dockPanel_1" Width="200"> <StackPanel /> <DockPanel /> </DockPanel&
GridSplitter
代码,但不幸的是它不起作用:我不允许更改网格的大小。我可以看到GridSplitter
,但我不能使用它
<DockPanel DockPanel.Dock="Left" Name="dockPanel_1" Width="200">
<StackPanel />
<DockPanel />
</DockPanel>
<Grid>
<GridSplitter ShowsPreview="True" Width="5" HorizontalAlignment="Right" VerticalAlignment="Stretch" />
</Grid>
<DockPanel DockPanel.Dock="Right" Name="dockPanel_2">
<StackPanel />
<DockPanel />
</DockPanel>
PS:如果你知道如何保存更改后的大小,以便在重新启动应用程序时其大小相同,只需添加到你的帖子中即可
提前感谢。如果您希望能够调整列/行的大小,则可以使用Grid
来代替DockPanel
谢谢您的帮助。这就是我要找的。我已经编辑了我的帖子,请看上面。我仍然有问题。检查我更新的示例。基本上,您需要调整列/行的大小,并且您的网格
是空的,从网格拆分器
开始,所以将外部DockPanel
替换为网格
(如我的示例中所示),并将内部DockPanel
作为网格的两列。布局应该保持不变,但您应该能够调整左/右列的大小谢谢,dkozl。有一个小问题:GridSplitter
与Width=“5”
-->一起使用,不幸的是,它位于左侧DockPanel
的顶部。这“杀死”了DockPanel
的一部分宽度。因此,将DockPanel
上的Margin
设置为类似Margin=“0,0,5,0”
的值就可以了!完美的谢谢。为了保存GridSplitters的大小布局,请看这个。QA:看看这个解决方案
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<DockPanel Name="dockPanel_1">
<StackPanel />
<DockPanel />
</DockPanel>
<GridSplitter Width="5" HorizontalAlignment="Right" VerticalAlignment="Stretch" ResizeBehavior="CurrentAndNext"/>
<DockPanel Grid.Column="1" Name="dockPanel_2">
<StackPanel />
<DockPanel />
</DockPanel>
</Grid>