在调整容器大小时,动态地将项添加到WPF ItemsControl ObservableCollection

时间:2013-07-31 21:33:46

标签: wpf resize itemscontrol

我有ItemsControl绑定到ObservableCollection个数据项。 ItemsControl位于Grid,该集合只有一组有限的项目(大约25-40)。 ItemsControl无需滚动,但应显示集合中的所有项目。这是我当前XAML的简化版本。

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>
    <Grid Grid.Row="0">
        <ItemsControl>
            ....
        </ItemsControl>
    </Grid>
    <Grid Grid.Row=1>
        ....
    </Grid>
    <Grid Grid.Row=2>
        ....
    </Grid>
</Grid>

ItemsControl只占用显示项目所需的空间,如果窗口垂直调整大小,控件下方会有空白区域。使用项目的ActualHeight或类似的东西,有没有办法检测控件下面是否有足够的空间来向集合添加新项目?缩小窗口时,如果没有足够的空间显示它,我还想从集合中删除一个项目。

0 个答案:

没有答案