我想做什么(我实际上不知道是否可能)是根据其内容设置给定行的高度:
< Grid.RowDefinitions> < RowDefinition Height =“{Binding ElementName = aaa,Path = Height”/> < RowDefinition Height =“*”/> < /Grid.RowDefinitions>
假设aaa被放入Grid的行中。
请注意:我希望我的行能够在最开始时设置高度。
这可能吗?
干杯!
答案 0 :(得分:2)
<RowDefinition Height="Auto" />
应该做你想做的事。
修改强>
您可以做的是为内容的SizeChanged事件添加处理程序。在该处理程序中,将网格的相应RowDefinition的高度设置为内容的ActualHeight并删除处理程序:
grid.RowDefinitions[x].Height = new GridLength(((FrameworkElement)sender).ActualHeight, GridUnitType.Pixel);
content.SizeChanged -= content_SizeChanged;
我没有测试过,但它应该给你一个良好的开端。 编辑测试,它的工作原理。也许有更好的方法,但这是一种方式。