using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;namespace test002
{
    [DefaultProperty("Text")] //比如前面这个
    [ToolboxData("<{0}:WebCustomControl1 runat=server></{0}:WebCustomControl1>")] //比如前面这个
    public class WebCustomControl1 : WebControl
    {
        [Bindable(true)]   //比如前面这个
        [Category("Appearance")] //比如前面这个
        [DefaultValue("")] //比如前面这个
        [Localizable(true)] //比如前面这个
        public string Text
        {
            get
            {
                String s = (String)ViewState["Text"];
                return ((s == null) ? String.Empty : s);
            }            set
            {
                ViewState["Text"] = value;
            }
        }        protected override void RenderContents(HtmlTextWriter output)
        {
            output.Write(Text);
        }
    }
}

解决方案 »

  1.   

    这是对类,属性,方法等的Arribute属性的定义,主要实现的是设计时支持,比如{Category("Appearance")] 是在设计时的属性界面中将Text属性添加到Appearance节点下,类似的还是自定义类型属性的类型转换器,像Dock,Size,Anchor,ItemColloction,ImageColloction这些属性在设计时都有相应的类弄转换器来支持设计时的属性编辑,还是Browseable描述,可设定属性在设计时属性界面可见或不可见等等..
      

  2.   

    参考http://msdn2.microsoft.com/zh-cn/library/5x6cd29c(VS.80).aspx
      

  3.   

    Arribute和Property都翻译成 属性了
      

  4.   

    这个[]号叫特性(Arribute)
        
    [DefaultProperty("Text")]//控件默认属性
    [Bindable(true)]//是否可以绑定到数据源    
    [Category("Appearance")]//在Property Browser中属性应显示在那个类别中
    [DefaultValue("")]//属性显示在Property Browser中的默认值
    [Localizable(true)] //属性是否包含可本地化的文本
      

  5.   

    lxcnn(过客) 给出的链接作用最大。   
    参考http://msdn2.microsoft.com/zh-cn/library/5x6cd29c(VS.80).aspx