【发布时间】:2015-10-22 03:42:17
【问题描述】:
假设我们有一个像这样的通用视图模型:
public class MyViewModel<T> : INotifyPropertyChanged where T : Class1
{
private T _objectModel;
public MyViewModel(T object)
{
_objectModel= object;
}
public event PropertyChangedEventHandler PropertyChanged;
}
当我想将此视图模型绑定到 UserControl 中的 DataContext XAML 时,我不能! XAML 编辑器找不到我的视图模型类。我应该如何在 XAML 中引用泛型类型?
<UserControl.DataContext>
<s:MyViewModel<T>/> // How should I write this here????
</UserControl.DataContext>
在上面的代码中,s 是我的工作区的别名,如果我将通用视图模型转换为具体的类,它可以正常工作。
【问题讨论】:
-
据我所知,XAML 没有泛型的概念。
-
您可能在您绑定到的后台代码中有一个通用视图模型。然后,在您想要的视图模型中构建传递。但要在 XAML 中做到这一点?我不这么认为
-
感谢您的建议。因为我是
WPF的新手。您能否给我一个链接,例如在后面的代码中绑定DataContext?有什么区别?将 MVVM 方程放在后面的代码中意味着动态绑定。我说的对吗? -
@AnthonyRussell 哦,谢谢 ;)