【问题标题】:Hidden public property in WPF controlWPF 控件中隐藏的公共属性
【发布时间】:2015-10-08 11:52:39
【问题描述】:

我正在 WPF 中编写一个以这种方式工作的自定义控件:用户设置一些属性,该属性的类型是某个类。然后,控件检查这个对象并生成一些集合,这些集合将通过数据绑定显示在 UI 中。

为了使数据绑定起作用,这个集合应该是一个公共属性,但为了封装,我不希望它是公共的。

在这种情况下最好的做法是什么?

【问题讨论】:

  • 你不能做到private吗?还是将set 设为private?或者更好的是,使用ReadOnlyCollection,并将set 设为private

标签: c# wpf wpf-controls


【解决方案1】:

您可以使用Browsable 属性从属性网格中隐藏属性,并使用EditorBrowsable 属性从XAML\CS 编辑器中隐藏它。或者您可以覆盖OnApplyTemplate 方法并将您的属性值分配给目标元素。您可以使用GetTemplateChild 方法获取目标元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-03
    • 2011-12-20
    • 1970-01-01
    • 2016-09-05
    • 1970-01-01
    相关资源
    最近更新 更多