我有一个 ItemsControl,在 Expander 内有一个 DataGrid 作为 ItemTemplate。
<Grid>
<ScrollViewer HorizontalScrollBarVisibility="Auto"
VerticalScrollBarVisibility="Auto">
<ItemsControl ItemsSource="{Binding SomeItemSource}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Expander>
<Grid>
<DataGrid ItemsSource="{Binding SomeItemSource}"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
MaxHeight="200">
</DataGrid>
</Grid>
</Expander>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
</Grid>
我想为每个 DataGrid 设置一个 ScrollViewer,如果扩展器列表太多,我想为扩展器列表设置一个。我的问题是它只有在我设置 DataGrid 的 MaxHeight 属性时才有效。这很烦人,因为如果 ItemsControl 中只有一个条目,则该条目不会使用整个空间,因为它的高度是有限的。
有人有想法吗?