【问题标题】:Telerik WinForms: Double clicking not distinguishing with single clickingTelerik WinForms:双击不区分单击
【发布时间】:2017-09-24 22:11:52
【问题描述】:

我们继承了一个使用 RADGrid 的项目。它同时启用了双击和单击事件。

但是当 DoubleClick 被触发时,Click 和 CellBeginEdit 也会被触发,...

我想在 DoubleClick 被触发时取消 Click、CellBeginEdit 或其他。

【问题讨论】:

    标签: wpf click mouse telerik-grid double-click


    【解决方案1】:

    我有一个来自 Telerik.WinControls.UI.RadGridView 的继承类 Sheet,我在我的项目中用作网格控件。

    这个简历是解决问题所需要的:

    public partial class Sheet : Telerik.WinControls.UI.RadGridView
    {
    
        //System Time to wait between Click and DoubleClick
        private int _doubleClickTime = 500;
        private bool _doubleClickRaised = false;
        private bool _doubleClickCancelEdit = false;
    
        public void FpSpread()
        {
            _doubleClickTime = System.Windows.Forms.SystemInformation.DoubleClickTime;
            //...
        }
    
    
        protected override void OnMouseDoubleClick(MouseEventArgs e)
        {
            _doubleClickRaised = true;
            _doubleClickCancelEdit = true;
    
            base.OnMouseDoubleClick(e);
        }
    
        protected override void OnMouseClick(MouseEventArgs e)
        {
            //Doing what Telerik doesn't
    
            //Wait system time needed for DoubleClick
            System.Threading.Thread.Sleep(_doubleClickTime + 10);
            Application.DoEvents();
            if (_doubleClickRaised)
            {
                _doubleClickRaised = false;
                return;
            }
    
            base.OnMouseClick(e);
        }
    
        //This only when editable cells...
        protected override void OnCellBeginEdit(object sender, GridViewCellCancelEventArgs e)
        {
            if (_doubleClickCancelEdit)
            {
                _doubleClickCancelEdit = false;
                e.Cancel = true;
            }
            base.OnCellBeginEdit(sender, e);
        }
    
    }
    

    希望对你有帮助!!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-20
      • 2017-04-29
      • 2015-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多