VSTO中捕捉窗口缩放的事件

   private void ThisWorkbook_Startup(object sender, System.EventArgs e)
        {
            this.WindowResize += new Microsoft.Office.Interop.Excel.WorkbookEvents_WindowResizeEventHandler(ThisWorkbook_WindowResize);
        }

        void ThisWorkbook_WindowResize(Microsoft.Office.Interop.Excel.Window Wn)
        {
            if (Wn.WindowState == Microsoft.Office.Interop.Excel.XlWindowState.xlMinimized)
            {
                MessageBox.Show("最小化");
            }
            else if (Wn.WindowState == Microsoft.Office.Interop.Excel.XlWindowState.xlMaximized)
            {
                MessageBox.Show("最大化");
            }
            else
            {
                MessageBox.Show("系统默认");
            }
        }

        private void ThisWorkbook_Shutdown(object sender, System.EventArgs e)
        {
        }

 

 

注意:1、这个事件是工作簿的事件,所以需要写在thisworkbook里

   2、捕捉的是工作簿的缩放,而不是EXCEL程序的缩放

posted @ 2010-03-15 15:53  RobinLao  阅读(791)  评论(0编辑  收藏  举报