在我的程序中,我希望獲取父節點的所有子項,以便可以向其添加新節點。在過去,我用這種方法:如何獲取所選項目的全部孩子
//This gets all the children of a parent node depending on it's DisplayName
var node = ObservableCollection.GetAllChildren(x => x.Children).Distinct().ToList().First(x => x.DisplayName == nameOfNode);
node.Children.Add(CreateNode(newNodeName));
現在我想GetAllChildren
基於關我SelectedItem
屬性,它是全功能的。用GetAllChildren
方法可以做到這一點嗎?如果是這樣,怎麼樣?
加入1:
我SelectedItem
屬性的類型爲視圖模型的。 ObservableCollection
也是ViewModel
類型,所以基本SelectedItem
告訴程序哪個ViewModel被選中。
加2:
我不能只是單純地添加到父節點。在添加之前,我必須檢查此程序中有多少兒童因其他原因。
我可能是錯的,但對我來說,你似乎會問如何找到相當於一個的SelectedItem節點,然後添加一個新的節點到它。爲什麼不只是使用SelectedItem.Add而是???它會爲您節省通過引用等於的搜索。 –
如果我這樣做會有同樣的效果嗎?罷工..我需要檢查有多少孩子屬於父節點。 –
這是一個可愛的問題。我認爲它應該有相同的效果,但說實話你是代碼旁邊的人不是我。 Soooo嘗試一下。如果它至少不起作用,我們還知道另一個方法,即如何不去做。愛迪生知道100種方式不製造燈泡。 :) –