zoukankan      html  css  js  c++  java
  • 使用C#编写可被桌面应用调用的ActiveX控件

     
    环境说明:Windows2003,VS2005

    简介:控件用C#开发,控件中有一个按钮和一个文本框,单击控件上的按钮则清空文本框里的内容;
                控件测试程序用VC开发,为MFC对话框程序,对话框上有一个“发送按钮”、“接收按钮”、“文本框”和“C#开发的控件”;
                单击对话框上的“发送按钮”,则将对话框上“文本框”中的内容发送到“C#开发的控件”的文本框中,单击对话框上的“接收按钮”,则将“C#开发的控件”的文本框中的内容接收到对话框上的“文本框”中。
         

    第一步:新建“windows控件工程”MyControl
    第二步:修改项目配置信息
                   1、修改项目配置文件:AssemblyInfo.cs
                         [assembly: AssemblyDescription("MyControl & com")]
                         [assembly: ComVisible(true)]

                   2、修改项目属性:
                         选中项目“MyControl”\右键单击\选择属性\选择“生成”\选中为Com Interop注册

                   3、将控件名称改为:MyTestControl
                          在文件MyTestControl.cs中添加如下代码:using System.Runtime.InteropServices;

    第三步:新建接口:IMyControl

        [Guid("6B576723-028A-4b1e-81DB-295E0159C8AF")]
        public interface IMyControl
        {
            string MyText
            {
                get;
                set;
            }
        }

    第四步:修改控件定义
        将 public partial class MyTestControl : UserControl改为:
        [Guid("FDF49DB3-54C2-4b4f-963C-349B5D68E483")]
        public partial class MyTestControl : UserControl, IMyControl
    第五步:向控件添加一个按钮(button1)和一个文本框(textBox1)
                    并向按钮添加单击事件:

            public void button1_Click(object sender, EventArgs e)
            {
                this.textBox1.Text = "";
            }

    第六步:向MyTestControl类中添加如下代码:

            public string MyText
            {
                get
                {
                    return this.textBox1.Text;
                }
                set
                {
                    this.textBox1.Text = value;
                }
            }
  • 相关阅读:
    Android中使用WebView, WebChromeClient和WebViewClient加载网页
    Android清除本地数据缓存代码案例
    暴雪hash算法
    C++ 指向类的指针
    Qt VS Tools 的Qt Option add 不上qt版本的问题
    Dom4j完整教程详解
    java中charAt()方法的使用
    Linux环境下C++调试的三板斧
    (转载)Markdown进阶(更改字体、颜色、大小,设置文字背景色,调整图片大小设置居中)
    关于回调函数的理解
  • 原文地址:https://www.cnblogs.com/Xrinehart/p/712074.html
Copyright © 2011-2022 走看看