美文网首页
使用C#开发VSTO中的BeforeDoubleClick事件

使用C#开发VSTO中的BeforeDoubleClick事件

作者: 何未生 | 来源:发表于2019-12-26 19:31 被阅读0次

    在VBA中曾使用过BeforeDoubleClick事件,不过是WorkSheet层级的,代码需要放在工作表的代码模块中,具体如下:

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    
    End Sub
    

    可以用Target获取双击的单元格区域。

    如果在VSTO开发中用C#中实现,可以用如下代码

    private void CheckBox_Click(object sender, RibbonControlEventArgs e)
    {
        private Excel.Application ExcelApp;
        ExcelApp = Globals.ThisAddIn.Application;
        if (CheckBAJ.Checked)
        {
            //如果选中就添加如下双击事件
            ExcelApp.SheetBeforeDoubleClick += new Excel.AppEvents_SheetBeforeDoubleClickEventHandler(CheckDoubleClick);
        }
        else 
         {
            //如果取消选中就取消该双击事件
            ExcelApp.SheetBeforeDoubleClick -= new Excel.AppEvents_SheetBeforeDoubleClickEventHandler(CheckDoubleClick);
        }
        
    }
    
    private void CheckDoubleClick()
    {
        MessageBox.Show("你双击了");
    }
    
    

    如果需要取消双击后默认的编辑事件,可以将CancelEventArgs的对象的参数设置为true。

    //取消默认双击事件
    Cancel = true;
    
    

    相关文章

      网友评论

          本文标题:使用C#开发VSTO中的BeforeDoubleClick事件

          本文链接:https://www.haomeiwen.com/subject/vzuloctx.html