gpt4 book ai didi

wpf - 垂直对齐 WPF RadioButton 项目符号并拉伸(stretch)其内容

转载 作者:行者123 更新时间:2023-12-04 05:28:12 25 4
gpt4 key购买 nike

我想使用一个横跨整个可用区域的网格作为 RadioButton 的内容,并且我希望 RadioButton 的项目符号垂直对齐。

让网格横跨整个区域很容易,我只需在 RadioButton 上设置 Horizo​​ntalContentAlignment 属性:

<RadioButton HorizontalContentAlignment="Stretch">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock>Foo</TextBlock>
<TextBox Grid.Column="1"/>
<TextBlock Grid.Row="1">The quick brown fox</TextBlock>
<TextBox Grid.Row="1" Grid.Column="1"/>
</Grid>
</RadioButton>

并按照 Simon Weaver 对此的回答 older question ,我可以相对容易地垂直对齐单选按钮的项目符号:
<RadioButton HorizontalContentAlignment="Stretch">
<TextBlock Grid.IsSharedSizeScope="True">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="A"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock>Foo</TextBlock>
<TextBox Grid.Column="1"/>
</Grid>
<LineBreak/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="A"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Row="1">The quick brown fox</TextBlock>
<TextBox Grid.Row="1" Grid.Column="1"/>
</Grid>
</TextBlock>
</RadioButton>

问题是,这样做后,内容不再延伸。
one or the other

如何获得垂直对齐的项目符号 拉伸(stretch)网格?

最佳答案

TextBlock 被正确拉伸(stretch),但其中的网格没有。大概这就是 TextBlock 的工作方式。

以下是有点hacky,但它的工作原理:

<RadioButton HorizontalContentAlignment="Stretch">
<TextBlock Name="Text" Grid.IsSharedSizeScope="True">
<Grid Width="{Binding ElementName=Text, Path=ActualWidth}">

关于wpf - 垂直对齐 WPF RadioButton 项目符号并拉伸(stretch)其内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12939604/

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