用户控件上有一个textbox和一个button
想设置两个属性:id和text
一个事件:clicked,相当于button的clicked事件怎样设置属性id和text才能在VS右下角的属性窗口里看得到呢?
怎样设置事件clicked才能在VS右下角的事件窗口里看得到呢?

解决方案 »

  1.   

    你是不是要通过代码来改变右面窗体中的属性中的ID和TEXT啊,如若是此中情况,那是不可能的,事件触发后才能改变相应的控件的ID和TEXT,
      

  2.   

    楼上的误会了,
    id和text我知道怎样设置,    public override string ID
        {
            get
            {
                return base.ID;
            }
            set
            {
                base.ID = value;
            }
        }    public string text
        {
            get
            {
                return text;
            }
            set
            {
                text = value;
            }
        }但是我不知道怎样才能在VS2005中的属性窗口中显示出来。那个clicked事件的思路是这样的:
    当我点那个button时,就执行这个clicked事件,随便弹出个对话框啊什么的都可以。
    这个clicked事件也要显示在VS2005中的事件窗口中哦。今天刚接触自定义控件,所以我什么都不懂,拜托各位了。
      

  3.   

    using System; 
    using System.Web; 
    using System.Web.UI; 
    using System.Web.UI.WebControls; 
    using System.ComponentModel; namespace WebApplication1
    {
        public partial class WebUserControl1 : System.Web.UI.UserControl
        {
            private string _MyTest = "";        [Description("描述"), DefaultValue("默认值")]
            public string MyTest
            {
                get
                {
                    return _MyTest;
                }
                set
                {
                    _MyTest = value;
                }
            } 
        }
    }
      

  4.   

    [Category("Appearance"),DefaultValue("默认值"),Description("描述")]//Appearance代表外观
    谢谢三楼,还有事件呢,怎么写?
      

  5.   

    直到vs2008似乎也不支持在设计器的属性窗口上显示用户控件的事件。例如你的用户控件设计了事件:[Description("我的用户控件_OnClick")]
    public event EventHandler Clicked;private void onCliecked()
    {
        if(this.Clicked !=null)
            this.Clicked(this,EventArgs.Empty);
    }在引用它的页面中你可以不在设计代码中声明任何事件方法,而是写在代码中:protected void Page_Load(object sender, EventArgs e)
    {
        this.WebUserControl1.Clicked += new EventHandler(WebUserControl1_Clicked);
    }void WebUserControl1_Clicked(object sender, EventArgs e)
    {
        throw new NotImplementedException();
    }
    在写到 += 之后可以按TAB键自动生成方法存根。这样是最快速准确的做法。在设计器上则不能很方便地设置。