gpt4 book ai didi

wpf - 如何使用网格或其他控件在 WPF 中布局表单以实现可维护性

转载 作者:行者123 更新时间:2023-12-03 15:13:02 26 4
gpt4 key购买 nike

关闭。这个问题需要更多focused .它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .

去年关闭。




Improve this question




我有一个 WPF 表单,我想在它上面布置一个标准表单。每个表单元素都有一个标签,然后是一个控件。很标准的东西。

如果我使用环绕面板,它会导致标签和控件分离,但我希望它们保持在一起。是否有一些 WPF 等效于 <nobr/> ?

网格可以工作,并允许跨列等,但是我真的很讨厌您在每个控件上指定列和行。这使得在列表中重新排序或插入内容非常不方便。

有没有办法让网格使用更多 HTML 样式的列/行,其中项目是它们所在行的子项,以便我可以轻松重新排序?

是否有其他控件可以让我轻松布局表单?

最佳答案

is there some WPF equivalent of nobr?



请记住,您可以嵌套面板:
<WrapPanel Orientation="Horizontal">
<StackPanel Orientation="Horizontal">
<Label>Some field</Label>
<TextBox>Some value</TextBox>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label>Another field</Label>
<TextBox>Another value</TextBox>
</StackPanel>
...
</WrapPanel>

此外,对于柱状布局,Grid 的共享大小范围可以协调使用它的任意数量的网格:
<StackPanel Orientation="Vertical" Grid.IsSharedSizeScope="True">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Label"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0">Some field</Label>
<TextBox Grid.Column="1">Some value</TextBox>
</Grid>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Label"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0">Another field</Label>
<TextBox Grid.Column="1">Another value</TextBox>
</Grid>
</StackPanel>

我有点讨厌 XAML 的冗长,尤其是您必须重复列定义。但是,如果您正确地构建类并使用模板,它就不会那么糟糕。请注意,您不会在此方案中的任何地方跟踪行号,因此重新排序字段很简单。

关于wpf - 如何使用网格或其他控件在 WPF 中布局表单以实现可维护性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2399234/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com