绑定到WPF中静态类中的静态属性
我有来自静态类的静态属性的绑定值的问题。
我的课:
namespace MyNamespace.Data { public static class MySettings { public static Color BackgroundColor { get; set; } public static Color FontColor { get; set; } } }
XAML:
...
当我运行此代码后,后台设置正常,但其余部分保持不变..
问题是您的源属性是Color
类型,目标属性是Brush
。 您可以使用您的颜色创建SolidColorBrush
如下所示:
您不需要使用static
属性…您可以使用Singleton
模式声明一个类,因此只能有一个实例, 就像 static
类一样。 只需在此类中使用普通的public
CLR属性……类似这样(但具有属性):
public class StateManager : INotifyPropertyChanged { private static StateManager instance; private StateManager() { } public StateManager Instance { get { return instance ?? (instance = new StateManager()); } } ... }
然后只使用Instance
属性从基础视图模型引用它,如下所示:
public StateManager StateManager { get { return StateManager.Instance; } }
然后您可以简单地访问UI中的属性,例如::