在TreeView 控件上,若是双击任何一个节点的checkbox 只会收到一次After_Check事件 可是check属性变化两次(从false到true 再从true到false),请问该如何解

在TreeView 控件上,若是双击任何一个节点的checkbox 只会收到一次After_Check事件 可是check属性变化两次(从false到true 再从true到false),请问该如何解决,谢谢!web

 

这是Vista和Win7的Bug
有个屏蔽双击的解决方法(不完美,没法双击折叠展开节点了):

using System;
using System.Windows.Forms;

public class MyTreeView : TreeView {
  protected override void WndProc(ref Message m) {
    // Suppress WM_LBUTTONDBLCLK
    if (m.Msg == 0x203) { m.Result = IntPtr.Zero; }
    else base.WndProc(ref m);
  }
}ide

相关文章
相关标签/搜索