我的程序中有一个TreeView
,通过ObservableCollection
实现。我使用ViewModel初始化并在树上执行操作。前面提到的ViewModel附加到数据模型,该数据模型具有树中所有公共元素的属性。
我的TreeView
数据模型中的一个属性是Children
:
private ObservableCollection<DataModel> _children;
public ObservableCollection<DataModel> Children
{
get { return _children ?? (_children = new ObservableCollection<DataModel>()); }
set { _children = value; }
}
我想知道如何为这些子节点创建父属性,这样当我创建新的子节点时,我可以定义父节点。
TreeViewViewModel:
//This is where the nodes are created
private DataModel CreateNode()
{
return new DataModel()
{
Children =
{
new DataModel() { Parent = /*After creating the property, how would I set the parent?**/ }
},
};
}
答案 0 :(得分:0)
我不知道你的意思。
但似乎你在DataModel中有DataModel等等。
现在你问如何得到父母,对吗?简单地在创建下一个节点时设置父级。
private DataModel CreateNode(DataModel parentNode)
{
return new DataModel()
{
Children =
{
new DataModel() { Parent = parentNode }
},
};
}