Winform中雙擊DevExpress的TreeList的樹形節點怎樣獲取當前節點

場景

DevExpress的TreeList怎樣設置數據源,從實例入手:node

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102548490編程

鼠標雙擊TreeList中的某一節點,在雙擊事件中怎樣獲取當前節點。spa

注:.net

博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關注公衆號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。code

實現

雙擊事件綁定

treeList.MouseDoubleClick += treeList_MouseDoubleClick_InOne;

 

雙擊事件中

將sender做爲treeList,再將treeList的數據源取出,是一個節點的List。orm

而後獲取當前選中的樹形節點的Id屬性對象

經過linq表達式獲取與Id想對應的節點,進而獲取節點對象。blog

示例代碼:教程

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參考上面博客。事件

相關文章
相關標籤/搜索