繁体   English   中英

wpf MVVM中有多个DataContext?

[英]Multiple DataContext in wpf MVVM?

我有一个窗口,我想绑定来自2个不同DataModels的数据上下文。 我遇到过这篇文章: WPF将多个控件绑定到不同的datacontexts,并且在我的代码中不起作用。 我不知道您是否必须设置类的“新”实例以使其起作用,但是我无法获取它来显示我的数据。 这是一个样本

<Grid>
    <Button Command="{Binding FurnaceDataViewModel.StartButtonCommand}"/>
    <Button Command="{Binding FurnaceDataViewModel.StopButtonCommand}"/>
    <Button Command="{Binding FurnaceDataViewModel.ClearButtonCommand}"/>

    <Label Content="{Binding FurnaceDataModel.TotalTimeIdle}" />
    <Label Content="{Binding FurnaceDataModel.GallonsUsed}" />
    <Label Content="{Binding FurnaceDataModel.TotalMoney}" />
    <Label Content="{Binding FurnaceDataModel.TotalTimeRun}" />       

</Grid>

我有我的MainWindow类别:

FurnaceDataContext dataContext = new FurnaceDataContext();
InitializeComponent();
DataContext = dataContext;

这是我的DataContext类

class FurnaceDataContext
{
    public FurnaceDataViewModel FurnaceDataViewModel { get; set; }
    public FurnaceDataModel FurnaceDataModel { get; set; }
    public SqlDataModel SqlDataModel { get; set; }
}

我无法正确显示文本或按钮命令。 有任何想法吗?

您需要实例化内部道具。

    FurnaceDataContext dataContext = new FurnaceDataContext();

    dataContext.FurnaceDataViewModel  = new FurnaceDataViewModel();
    dataContext.FurnaceDataModel = new FurnaceDataModel();

    DataContext = dataContext;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM