我的Datagrid在ObservableCollection上具有绑定(bind),并在对EF提取的某些值进行分组后被填充。
我的问题是,datagrid-height超出了窗口大小。
有谁知道如何解决这个问题...我差点把自己用谷歌搜索死了..:o
<UserControl x:Class="UltranizerV2.Views.Storage.InventoryList"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="25"></RowDefinition>
</Grid.RowDefinitions>
<DockPanel Grid.Row="0" >
<DataGrid ItemsSource="{Binding PresentableInventoryItems}" VerticalAlignment="Stretch" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Produkttitel" Width="350" Binding="{ Binding ProductTitle}"/>
<DataGridTextColumn Header="Sku" Width="100" Binding="{ Binding Sku}" />
<DataGridTextColumn Header="Menge" Width="60" Binding="{ Binding Quantity}" />
</DataGrid.Columns>
</DataGrid>
</DockPanel>
<Label Grid.Row="1">Arsch</Label>
</Grid>
</UserControl>
最佳答案
总结一下注释,您的控件看起来不错,这表明问题出在视觉树的上方。它很可能是InventoryList
或它的父级之一,处于控制状态,它为子级提供了无限的空间来增长,就像StackPanel
,ScrollViewer
或Canvas
一样。由于DataGrid
可以增长以容纳所有项目,因此看不到滚动条。
删除该控件或将其替换为限制其子控件大小的控件