【发布时间】:2013-09-09 13:42:11
【问题描述】:
在 WPF 中有许多 DependencyProperties 及其 CLR setter 和 getter 标记为公共。这很糟糕,因为任何人都可以设置他们的价值。我想知道如何创建一个只能从类内部设置的私有 RenderTransform 属性?
【问题讨论】:
-
它们是公开的,因为它们必须通过 XAML 设置(其中可设置的属性必须是公开的)。也就是说......这不是什么坏事(拥有一个没有人可以改变的财产是什么意思?!)最后......你认为你可以用私人依赖财产做什么?
-
@Adriano 我有一个工作用例,其中包含在用户控件中使用的私有依赖属性stackoverflow.com/questions/18332633/…
-
@Adriano 只读依赖属性在您想将某些状态传达给样式触发器时很有用。
-
@Adriano 最后一句话描述了我想要实现的目标:安全。
-
@Adriano,确保没有必要将它们设为私有,但由于定义在用户控件中显示哪个 UI 编辑器的属性仅在控件内部使用,我不想公开对外界的属性。
标签: c# wpf dependency-properties