我在我的应用程序中有一个视图,其中包含要显示的巨大数据表。数据显示在两个嵌套的 UniformGrid 中。UniformGrid 是 ItemsControls 中的 ItemPanel,并绑定到一些 ViewModel。请参阅下图和一些示例 XAML 代码:
视图和视图模型 http://img593.imageshack.us/img593/8825/stackoverflowuniformgri.png
<!-- The green boxes -->
<ItemsControl ItemsSource="{Binding BigCells}">
<ItemsControl.ItemPanel>
<PanelTemplate>
<UniformGrid />
</PanelTemplate>
</ItemsControl.ItemPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<!-- The blue boxes -->
<ItemsControl ItemsSource="{Binding SmallCells}">
<ItemsControl.ItemPanel>
<PanelTemplate>
<UniformGrid />
</PanelTemplate>
</ItemsControl.ItemPanel>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
现在,我希望我的视图可以调整大小,但这根本不能很好地执行,因为每个小盒子的布局都是计算出来的。
这至少可以对盒子大小进行一次,因为它对所有盒子都是相等的。
在 WPF 中显示大量控件的最佳做法是什么/我可以从哪里开始优化?关键字已经可以帮助我继续发现 WPF 中 UniformGrids 的性能优化。