none
如何继承Visio Drawing Control控件,并添加自己的方法? RRS feed

  • 问题

  • 我想通过继承AxDrawingControl控件,来添加自己的事件接口。

    我的测试代码如下,编译可以通过,但是无法使用继承后的控件。

    不知道是因为控件AxMicrosoft.Office.Interop.VisOcx.AxDrawingControl是无法继承的,

    还是由于我的代码哪里不正确?还是其他的原因。

    请指教,多谢!

    测试代码:

    namespace ValueButtonLib
    {
        public partial class ValueButton : AxMicrosoft.Office.Interop.VisOcx.AxDrawingControl
        {
            public ValueButton()
            {
                InitializeComponent();
            }

            // Creates the private variable that will store the value of your
            // property.
            private int varValue;

            // Declares the property.
            public int ButtonValue
            {
                // Sets the method for retrieving the value of your property.
                get
                {
                    return varValue;
                }
                // Sets the method for setting the value of your property.
                set
                {
                    varValue = value;
                }
            }

        }
    }

    2010年4月23日 7:59

全部回复

  • AxDrawingControl本身應該是註冊為ActiveX控件調用了 當你繼承後 你說的無法使用是什麼意思呢?

    如果你僅僅是想開發Ax控件可以參考我這篇文章 http://hi.baidu.com/1987raymond/blog/item/15134ccf6fffc131f8dc6117.html


    I see you~http://hi.baidu.com/1987raymondMy Blog~~~
    2010年4月25日 14:47
    版主
  • 多谢版主的回复。不好意思,没有将问题描述清楚。

    关于窗体控件的继承,我参照了下面这篇文章:

    http://msdn.microsoft.com/zh-cn/library/5h0k2e6x(VS.80).aspx

    我认为,在继承了AxMicrosoft.Office.Interop.VisOcx.AxDrawingControl之后,应该向上面这篇

    文章中提到的那样,【将控件添加到窗体】->【在“工具箱”中单击“ValueButtonLib 组件”。】,

    在工具箱中会出现,类似于“ValueButtonLib 组件”这样的组件,但是没有出现。

     

    2010年4月26日 2:07
  • 你好不知道你生成類庫是否成功了 因為我這裡添加了對VisOCx的引用后 VS提示我

    public partial class ValueButton : VisOcx.DrawingControlClass  這個類不能被嵌入的 我也是無法生成成功的

    我不太清楚你引用的是什麽dll

    如果能夠編譯成功 那麼在工具條那裡應該是會有相應的控件的

     

    你可以直接使用VisOcx.DrawingControlClass 這個類


    I see you~http://hi.baidu.com/1987raymondMy Blog~~~
    2010年4月26日 2:42
    版主
  • 为了使用 Visio Drawing Control,我引用的是下面这几个Dll:

    AxInterop.Microsoft.Office.Interop.VisOcx.dll

    Microsoft.Office.Interop.Visio.dll

    Microsoft.Office.Interop.VisOcx.dll

     

    AxMicrosoft.Office.Interop.VisOcx.AxDrawingControl这个类是在,AxInterop.Microsoft.Office.Interop.VisOcx.dll中的。


    >你可以直接使用VisOcx.DrawingControlClass 這個類

    这个类中没有提供滚动条事件,我想通过继承AxDrawingControl,来给控件添加Scroll事件,不知道这样是否可行?

     

    2010年4月26日 6:43