【发布时间】:2013-08-23 08:25:28
【问题描述】:
我有 2 个名为“MyTree”和“MyGrid”的用户控件。 我有另一个名为“Content”的用户控件,其中有一个“MyTree”和“MyGrid”。 我有一个带有选项卡控件的窗口。 每个选项卡项都包含“内容”。选项卡项是动态添加的。 那么,当我动态创建选项卡项目时,如何将项目添加到“MyGrid”。 我使用 MVVM 模式和 INotifyPropertyChanged 事件 我将项目源设置为某个属性。
现在我的“ContainerPanelViewModel”有
private string pro11 ;
public event PropertyChangedEventHandler PropertyChanged;
public void OnPropertyChanged(PropertyChangedEventArgs e)
{
if (PropertyChanged != null)
{
MessageBox.Show("Enterd loop");
PropertyChanged(this, e);
}
}
public string pro1
{
get
{
return pro11;
}
set
{
if (pro11 != value)
{
pro11 = value;
OnPropertyChanged(new PropertyChangedEventArgs("pro1"));
}
}
}
我有另一个视图模型,它有一个
ObservableCollection<ContainerPanelViewModel> RootNodeTabCollection
我正在添加
RootNodeTabCollection[0].pro1 = "abc";
但是标签内容没有更新
if (PropertyChanged != null)
总是假的..并且不进入循环。 任何时候都不会显示消息框
【问题讨论】:
-
贴一些代码,很难想象你在描述什么。
-
由于一些安全问题,我无法显示代码。
标签: wpf binding inotifypropertychanged