我处于这种情况,我必须使用static
对象作为我的DataContext
。 我读过很多文章,建议改为Singleton
。但是,由于设计上的限制,我不能走这条路。WPF将静态对象分配给XAML中的DataContext
我想一个静态对象分配给我的控制DataContext
如下:
<UserControl.DataContext>
<local:ViewModelA>
</UserControl.DataContext>
但是它总是告诉我,这是无法使用的对象,因为它没有定义一个公共的构造函数。
在我的静态视图模型中,我有一个静态构造函数,但由于C#约束它没有公开。
谢谢
什么是静态对象?有静态类和对象,它们是非静态类的实例。你的XAML创建了一个非静态类'ViewModelA'的实例,因此需要一个非静态的无参数构造函数。 – Clemens
我的viewmodel是一个静态类。 – John
然后你不能这样做 – Steve