Wal*_*t W 5 c# windows treeview
是否有一种简单的方法可以在双击时禁用TreeView节点的自动展开/折叠?如果当前系统时间与双击所预期的系统时间匹配,我一直无法找到这个问题的答案,如果没有检查BeforeExpand/BeforeCollapse,那么这个问题仍然有效 - 覆盖OnNodeMouseDoubleClick和/或OnDoubleClick似乎不够.
或者,检查系统时间,看它是否适合双击唯一的方法来做到这一点?
谢谢你的帮助,-Walt
Wal*_*t W 13
解决:实际上,整个解决方案是在http://www.developersdex.com/gurus/code/831.asp.显然,在TreeView的WM_LBUTTONDBLCLK处理程序中根本没有调用OnNodeMouseDoubleClick()...它在LBUTTONUP处理程序中调用.那么,以下是该网站的内容:
protected override void DefWndProc(ref Message m) {
if (m.Msg == 515) { /* WM_LBUTTONDBLCLK */
}
else
base.DefWndProc(ref m);
}
Run Code Online (Sandbox Code Playgroud)
如果要暂停节点左侧的处理,则在OnNodeMouseDoubleClick()中执行以下操作:
if (e.X >= e.Node.Bounds.Left) {
return;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9365 次 |
| 最近记录: |