2012-10-04 85 views
0

我想問一下在這種情況下我應該如何實現解決方案的意見。自動更新TreeView的列表C#

DataItem A = someDataItem; 
DataItem B = someDataItem; 
DataItem C = someDataItem; 
DataItem D = someDataItem; 

//CreateNode : this function convert the DataItem into TreeNode 
TreeNode nodeA = CreateNode(A); 
TreeNode nodeB = CreateNode(B); 
TreeNode nodeC = CreateNode(C); 
TreeNode nodeD = CreateNode(D); 

//add the nodes to a TreeView component here 
treeView.Nodes.Add(nodeA); 
treeView.Nodes.Add(nodeB); 
treeView.Nodes.Add(nodeC); 
treeView.Nodes.Add(nodeD); 

List<DataItem> specialWatchedNodeList = new List<DataItem>(); 
specialWatchedNode.Add(nodeA); 
specialWatchedNode.Add(nodeD); 

我有treeView其中包含所有的節點。但是,我只有其中一些我想要被監視(要被監視)=>(nodeAnodeD)。如果treeView中的nodeAnodeD發生任何異常,我應如何更新nodeAnodeD中的specialWatchedNodeList

+0

這是winforms,asp,WPF,silverlight,windows phone還是什麼? – Servy

+0

窗體窗體應用程序 –

回答

1

只要通過在類DataItem上實現INotifyPropertyChanged接口來更改DataItem,就可以接收事件。

http://msdn.microsoft.com/en-us/library/ms743695(v=vs.100).aspx

你需要申報的PropertyChanged事件,然後創建OnPropertyChanged方法。對於每個要更改通知的媒體資源,只要屬性已更新,即可致電OnPropertyChanged