我知道对于某些对象,宽度可以指定为width="*"
,因此宽度尽可能大。但是,当我使用TextBlock尝试它时,它给出了一个错误。
有没有办法指定文本块的宽度尽可能大?
答案 0 :(得分:4)
"*"
仅对网格行/列大小AFAIK有效。你想要HorizontalAlignment="Stretch"
。
更新:由于您的评论表明您在ListBox中执行此操作,因此您还需要将ListBoxItem的HorizontalContentAlignment
设置为"Stretch"
。把它放在你的元素中:
<ListBox ...>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
答案 1 :(得分:0)
只有Grid中的RowDefinition和ColumnDefinition支持“*”语法。您可以在XAML中使用“自动”让它自动确定最佳宽度/高度。或者在代码隐藏中,您可以将宽度/高度指定为double.NaN
。
答案 2 :(得分:0)