实现外部控件滚动条控制Dsoframer word的滚动

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cyrus_c/article/details/51122268

具体是这样子滴

客户要求把DsoFramer 的滚动条放大 着什么鬼要求

word也没这个属性 于是就自己搞了一个这个 直接上代码了

        private void vScrollBar1_Scroll(object sender, ScrollEventArgs e)
        {
            scrollHeight = e.NewValue;  //把滚动后的位置装起来
            
        }

  private void vScrollBar1_MouseUp(object sender, MouseEventArgs e)
        {
            Microsoft.Office.Interop.Word.Document oDoc = axFramerControl1.ActiveDocument as Microsoft.Office.Interop.Word.Document;
            int percent = 0;
            if(scrollHeight == 0)
            {
                percent = 0;
            }
            else
            {
                percent = scrollHeight + 8;  //这时因为我的vScrollBar控件滚动不到最后 所有自己加了一点
            }
            
            oDoc.ActiveWindow.ActivePane.VerticalPercentScrolled = percent;  //这个属性就是控制word自带的滚动条了 word的滚动条必须是显示的
            isSetHeight = true;


        }


        private void timer1_Tick(object sender, EventArgs e)  //这个就是在鼠标滑轮滚动的时候 我们的控件滚动条也可以跟着动
        {
            Microsoft.Office.Interop.Word.Document oDoc = axFramerControl1.ActiveDocument as Microsoft.Office.Interop.Word.Document;
            if (isSetHeight)
            {
                isSetHeight = false;
                return;
            }
            else
            {
                vScrollBar1.Value = oDoc.ActiveWindow.ActivePane.VerticalPercentScrolled;
            }
            
        }

展开阅读全文

没有更多推荐了,返回首页