【问题标题】:WPF toolkit DataGrid show fields even with browsable attribute set to falseWPF 工具包 DataGrid 显示字段,即使可浏览属性设置为 false
【发布时间】:2010-05-12 08:01:49
【问题描述】:

您有一个可观察的集合,我使用 DataGrid 的 itemsource 属性绑定到 DataGrid。

集合内类的所有属性都在DataGrid中正确显示。现在,我想使用类中的可浏览属性 [Browsable(false)] 将一些字段隐藏到 DataGrid。它在winforms中运行良好,但在WPF中似乎不起作用。

有人知道为什么吗?我可以稍后隐藏列,但我不想以这种方式损失性能。

还有其他解决办法吗?

谢谢。

【问题讨论】:

  • +1 我也想要这个问题的答案。
  • 下面的解决方法是可以的,如果你需要它 100 次你可能需要子类化 WPF 数据网格(否则你必须在你使用的每个网格上连接这个函数)。
  • +1 我也想知道为什么会这样,以及是否有比在 AutoGeneratingColumn 事件中取消它更好的方法

标签: c# wpf attributes browsable


【解决方案1】:

此代码适用于 .NET 4.0

void m_grid_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
    if (((PropertyDescriptor)e.PropertyDescriptor).IsBrowsable == false)
       e.Cancel = true;
}

【讨论】:

    【解决方案2】:

    如果能够设置成员属性并让 .NET 4.0 DataGrid 尊重它们,那就太好了。

    【讨论】:

      【解决方案3】:

      DisplayAttribute msdn doc 似乎适用于 silverlight 工具包。我没有在 WPF 中尝试过,但它们通常是相同的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-04-20
        • 2020-11-16
        • 1970-01-01
        • 2014-05-30
        • 2013-05-17
        • 2010-12-16
        • 1970-01-01
        相关资源
        最近更新 更多