mic*_*rus 5 c# wpf dependency-properties mvvm
我想在普通编程中做一些类似静态变量的事情,只能在使用依赖属性的 XAML 中。
这意味着我希望该物业:
我怎么做 ?
听起来您想要一个始终适用于每个元素的附加属性。我认为最简单的方法是通过依赖属性的CoerceValueCallback,在那里你可以强制它总是返回静态值而不管元素的本地值(你将更新PropertyChangedCallback 中的静态值)。
不过,这似乎是使用依赖属性系统的一种奇怪方式。也许您只需要一个中央绑定源?您可以通过分配Binding.Source使用绑定到静态实例x:Static:
{Binding Source={x:Static Member=global:GlobalObject.SharedInstance},
Path=SharedValue}
Run Code Online (Sandbox Code Playgroud)
请注意,这SharedValue不是静态属性;它是从静态SharedInstance属性访问的实例的属性:
public class GlobalObject {
private static readonly GlobalObject _instance = new GlobalObject();
public static GlobalObject SharedInstance { get { return _instance; } }
public object SharedValue { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
861 次 |
| 最近记录: |