我的App.xaml.cs中有一个名为Property
的{{1}},其中包含用户详细信息。
我已阅读here,您不能在App类上拥有依赖项属性。
我选择使用App.cs,因为它对整个程序是全局的,并且用于访问控制,但欢迎任何替代方案。
现在我的问题是如何从UserControls和Windows绑定到此属性。
User
这显然只适用于IsEnabled="{Binding Path=User, Converter={StaticResource hasAccessConverter}, ConverterParameter=Mid}"
上的属性。我想访问应用程序上的属性。
如果我实现DataContext
,有人可以向我展示绑定到App.xaml.cs属性的示例吗?
由于 -Oliver
答案 0 :(得分:23)
我在这里读到你不能在App类上拥有依赖属性。
确实你不能,因为Application
不会继承DependencyObject
。但是,没有必要:只有绑定的 target 属性需要是依赖属性。
如果要绑定到App类的属性,可以这样做:
IsEnabled="{Binding Path=User, Source={x:Static Application.Current}}"
答案 1 :(得分:4)
要在C#中以编程方式访问它,您可以这样做:
((App)Application.Current).YourMethod
((App)Application.Current).YourProperty
答案 2 :(得分:0)
您可以使用自定义转换器在Silverlight中以声明方式绑定到Application.Current。
请参阅我的博文here