【问题标题】:Silverlight ItemsControl wih ColumnHeaderSilverlight ItemsControl 与 ColumnHeader
【发布时间】:2010-01-20 21:26:41
【问题描述】:

如何将列标题添加到 Silerlight ItemsControl?我需要一种快速的方法来显示包含一些标题信息的项目列表。

【问题讨论】:

  • 快速定义?易于编码或高性能运行时?

标签: silverlight itemscontrol


【解决方案1】:

这似乎是一个简单的问题,但为什么不在只读模式下使用DataGrid

数据网格的缺点是它不使用虚拟化的 ItemsControl,因此如果您尝试列出数百个包含许多列的项目,性能可能会受到影响。

【讨论】:

  • 我在数据网格中列出了 500 个项目,并相应地设置了我的 VirtualizationMode。无论行数如何,我还使用启用 GPU 功能来加速我的数据网格。 blogs.silverlight.net/blogs/msnow/archive/2009/04/01/…
  • @Tacoman667:我不知道 DataGrid 有 VirtualizationMode。但是我发现有 UI 虚拟化,但没有数据虚拟化,所以情况可能还不错。我的测试是在 SL 4 上进行的,它仍然是 Beta 版,因此可能不是一个很好的性能衡量标准。
【解决方案2】:

ItemsControl 本身没有内置任何内容,但没有什么可以阻止您制作具有这种功能的自定义控件。如果它是您经常需要的 UI 的一部分,那么为了以后重用它的能力需要做一些前期工作。

向它添加太多功能可能有点矫枉过正;如果您需要列排序或自动列/标题生成,您可能会发现 DataGrid(正如 Anthony 已经指出的那样)将是免费获得大量功能的更快方法。

【讨论】:

    猜你喜欢
    • 2023-03-05
    • 2011-07-07
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 2011-04-13
    • 2011-09-05
    • 2011-01-21
    • 1970-01-01
    相关资源
    最近更新 更多