开发中遇到一个需求,类似windows系统文件夹选中单击是重命名,双击打开。我的是devexpress的treelist控件,MouseClick和MouseDoubleClick事件我都定义了,在MouseClick判断单击的是否为上次选中的节点,是的话重命名,MouseDoubleClick事件中定义了其他功能,两个事件触发的功能没有关联,但是问题是我选中的节点双击后依然进入MouseClick中,导致总是重命名,大家给点思路,或者提供点MouseClick事件重载的方法,谢谢

解决方案 »

  1.   


            private void XXX_MouseDown(object sender, MouseEventArgs e)
            {
                if (e.Clicks == 1)//单击
                {
                }
                else if (e.Clicks == 2)//双击
                {
                }
            }
      

  2.   

    定义一个Timer,比如设置300毫秒
    声明bool isDoubleClick;
    private void XXX_MouseDown(object sender, MouseEventArgs e)
    {
     isDoubleClick = (e.Clicks == 2)
    }
    Timer执行时判断一下isDoubleClick,执行一遍后isDoubleClick重置,然后停止Timer