【问题标题】:Specifying datacontext to a generic Viewmodel为通用视图模型指定数据上下文
【发布时间】:2013-02-22 10:21:30
【问题描述】:

我已经定义了一个类似的视图模型

   public class DataGridBaseViewModel<T>:ViewModelBase
    {
    ObservableCollection<T> DataCollection;
public abstract void Initialize();


    }
public class Grid1ViewModel:DataGridBaseViewModel<MyModel1>
{
public void override Initialize()
{
DataCollection = new ObservableCollection<MyModel1>();
}
}
public class Grid2ViewModel:DataGridBaseViewModel<MyModel2>
{
public void override Initialize()
{
DataCollection = new ObservableCollection<MyModel2>();
}
}

现在我有 2 个数据网格,它们应该显示 MyModel1 和 MyModel2。如何指定视图的数据上下文。

请帮忙。

提前致谢

【问题讨论】:

  • 请从您的角度发布 xaml

标签: viewmodel mvvm-light datacontext


【解决方案1】:

我的视图是用户控件。我在视图模型定位器中定义了我的视图模型,然后在 xaml 中使用以下内容将视图 DATACONTEXT 绑定到视图模型:

<UserControl x:Class="FTC.View.EmployeeListView"
            xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
            xmlns:cmd="http://www.galasoft.ch/mvvmlight"
            mc:Ignorable="d" 
            DataContext="{Binding EmployeeList_VM, Source={StaticResource Locator}}">

所以只需使用上面的示例将数据网格的数据上下文绑定到视图模型

【讨论】:

  • 这不是答案 - 没有关于泛型的详细信息。
猜你喜欢
  • 2012-03-16
  • 1970-01-01
  • 2021-01-09
  • 2019-12-22
  • 2017-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-19
相关资源
最近更新 更多