在以下示例中,有两个Grid
行高度为6*
和4*
。问题是,只有在用户更改窗口的大小后,才会计算正确的行高。 只有在设置SizeToContent
标志时才会发生这种情况。
任何想法为什么?如何强制窗口在加载时自动计算高度?Wpf网格行高不能用SizeToContent正确计算
<Window x:Class="TestGridRow.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" SizeToContent="Height">
<Grid x:Name="grid">
<Grid.RowDefinitions>
<RowDefinition x:Name="row0" Height="6*"/>
<RowDefinition x:Name="row1" Height="4*"/>
</Grid.RowDefinitions>
<TextBox Grid.Row="0" x:Name="textBox" TextWrapping="Wrap"
HorizontalScrollBarVisibility="Auto" IsReadOnly="True" xml:space="preserve">
Hallo
Hallo
Hallo
</TextBox>
<TextBlock Background="Red" Grid.Row="1"/>
</Grid>
3.5或4?我认为在网格和行大小计算中存在一些问题,如4 – Will 2010-10-20 13:00:15
基本上是2010/4,但在2008/3.5中也是如此。 – Elad 2010-10-20 13:04:18
在该类的构造函数中,您可以使用Dispatcher在渲染后设置SizeToContent设置。 – Rachel 2010-10-20 13:25:23