2015-08-09 42 views
0

我在代码中动态生成一对treeview控件,并将所有treeview指向同一个SelectedNodeChanged事件。但是,在这种情况下,我无法获取包含被单击节点的特定树视图。从EventArgs中获取特定的树视图

for (int i = 0; i < numTree; i++) 
{ 
    treeList[i] = new TreeView(); 
    treeList[i].SelectedNodeChanged += TreeSelectedNodeChanged; 
} 

private void TreeSelectedNodeChanged(object sender, EventArgs e) 
{ 
    // cannot call treeList[i] since all treeview should direct to this event 
    Message.Text = "You selected: " + treeList[i].SelectedNode.Text; 
} 

如有任何意见,将不胜感激!

回答

0

sender参数是控制触发事件

private void TreeSelectedNodeChanged(object sender, EventArgs e) 
{ 
    var selected_tree_view = (TreeView)sender; 
    // Just in case you need it 
    var selected_tree_view_index = treeList.IndexOf(selected_tree_view); 
    Message.Text = "You selected: " + selected_tree_view.SelectedNode.Text; 
} 
+0

行之有效!非常感谢! – user3081703