如何将Window或其子项的DataContext绑定到Window的一个特定属性?

时间:2014-12-04 12:18:44

标签: c# wpf xaml binding datacontext

有点愚蠢的问题,但不知怎的,我无法找到如何绑定DataContext或其Window的{​​{1}}(例如Content面板)到Grid的一个特定属性(例如,下面示例中的Window):

代码:

ViewModel

XAML:

internal partial class MyWin : Window
{
    public MyViewModelType ViewModel { get; set; }
    ...
}

2 个答案:

答案 0 :(得分:0)

我认为你有这个错误的方法

如果你的窗口挂钩,它会正常工作

public partial class MyWindow
{
    public MyWindow()
    {
        InitializeComponent();
        DataContext = ViewModel = new MyViewModelType();
    }
}

答案 1 :(得分:0)

请为viewmodel定义字段,因为它不会更改并实现INPC

 private MyViewModelType viewmodel;

    public MyViewModelType ViewModel
    {
        get 
        { 
            if(viewmodel == null)
            {
                viewmodel = new MyViewModelType();
            }
            return viewmodel; 
        }
        set 
        { 
            viewmodel = value; 
            OnPropertyChanged("ViewModel")
        }
    }

其余代码保持不变。