我有一个 Devexpress.XtraTreeList 组件。我想捕捉用户点击展开按钮或节点的点击事件?我怎么能理解这个?
编辑:实际上我正在尝试使用 treelist 做一些类似于 Outlook 的事情。当我单击节点时,例如收件箱,收件箱中的消息显示在屏幕右侧。当用户单击另一个节点时,必须更新树列表,因为可能会读取一些消息。我在点击事件中做了这个功能。没关系。但在这种情况下,展开按钮功能无法正常工作。
我有一个 Devexpress.XtraTreeList 组件。我想捕捉用户点击展开按钮或节点的点击事件?我怎么能理解这个?
编辑:实际上我正在尝试使用 treelist 做一些类似于 Outlook 的事情。当我单击节点时,例如收件箱,收件箱中的消息显示在屏幕右侧。当用户单击另一个节点时,必须更新树列表,因为可能会读取一些消息。我在点击事件中做了这个功能。没关系。但在这种情况下,展开按钮功能无法正常工作。
我找到了解决方案..
感谢大家..
private void treeList1_Click(object sender, System.EventArgs e) {
DevExpress.XtraTreeList.TreeList tree = sender as DevExpress.XtraTreeList.TreeList;
DevExpress.XtraTreeList.TreeListHitInfo info = tree.CalcHitInfo(tree.PointToClient(MousePosition));
if(info.HitInfoType == DevExpress.XtraTreeList.HitInfoType.Cell)
... // your code is here
}
单击节点时不会触发任何事件。但是,这里有一些您可能感兴趣的其他事件:
AfterExpand
- 在节点展开后立即触发。
BeforeExpand
- 在节点展开之前触发。
FocusedNodeChanged
- 更改焦点节点后立即触发(当用户选择一个节点时会发生这种情况,无论他们是单击它还是使用箭头键到达那里)。
我还会注意到 DevExpress 有自己的知识库,其中包含示例和示例代码。这将是您开始研究未来问题的好地方:http: //www.devexpress.com/Support/Center/
private void xtraTree_AfterFocusNode(object sender, NodeEventArgs e)
{
}
您可以在 XtraTreeList 控件上处理上述事件,然后从 NodeEventArgs - e.Node 中提取被单击的节点