場景
DevExpress的TreeList怎樣設置數據源,從實例入手:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102548490
鼠標雙擊TreeList中的某一節點,在雙擊事件中怎樣獲取當前節點。
注:
博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
雙擊事件綁定
treeList.MouseDoubleClick += treeList_MouseDoubleClick_InOne;
雙擊事件中
將sender作為treeList,再將treeList的數據源取出,是一個節點的List。
然后獲取當前選中的樹形節點的Id屬性
通過linq表達式獲取與Id想對應的節點,進而獲取節點對象。
示例代碼:
private static void treeList_MouseDoubleClick_InOne(object sender, System.Windows.Forms.MouseEventArgs e) { if (e.Button == System.Windows.Forms.MouseButtons.Left) { DevExpress.XtraTreeList.TreeList treeList = sender as DevExpress.XtraTreeList.TreeList; if (treeList != null && treeList.Selection.Count == 1) { object idValue = null; string strIdValue = String.Empty; DataTreeNode nodeData = null; List<DataTreeNode> datasource = treeList.DataSource as List<DataTreeNode>; if (datasource != null) { idValue = treeList.Selection[0].GetValue("Id"); strIdValue = idValue.ToString(); nodeData = datasource.Where<DataTreeNode>(p => p.Id == strIdValue).FirstOrDefault<DataTreeNode>(); if (nodeData != null) { } } } } }
其中DataTreeNode參考上面博客。