我有一个 WPF 数据网格,并希望它的高度等于它的行 + 标题的高度之和。
即,如果我的数据网格标题是 100 像素并且我有 4 行,每个 50 像素的高度,我的数据网格的总高度应该是 300 像素。
有没有一种方法可以声明性地指定高度应该与其内容的总和相匹配?
我有一个 WPF 数据网格,并希望它的高度等于它的行 + 标题的高度之和。
即,如果我的数据网格标题是 100 像素并且我有 4 行,每个 50 像素的高度,我的数据网格的总高度应该是 300 像素。
有没有一种方法可以声明性地指定高度应该与其内容的总和相匹配?
你能粘贴你的代码吗?因为您所要求的可以通过将 DataGrid 放入面板中简单地实现,这不会限制其大小并将其精确地安排在所需的控件大小内。
换句话说,您可以将它垂直放置在 StackPanel 中,就是这样:
<Window x:Class="WpfApplication5.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dg="clr-namespace:Microsoft.Windows.Controls;assembly=WPFToolkit"
Title="Grid Sample"
Height="300"
Width="300">
<StackPanel>
<dg:DataGrid ItemsSource="{Binding}">
<dg:DataGrid.Columns>
<dg:DataGridTextColumn Header="No."
Width="SizeToCells"
Binding="{Binding CheckNumber}"
IsReadOnly="True" />
<dg:DataGridTextColumn Header="Date"
Binding="{Binding Date, StringFormat=d}" />
<dg:DataGridTextColumn Header="Pay To"
MinWidth="200"
Binding="{Binding Recipient}"
CanUserSort="False" />
</dg:DataGrid.Columns>
</dg:DataGrid>
</StackPanel>
</Window>