自定义服务器控件的元数据属性
来源:互联网 发布:电脑单机游戏知乎 编辑:程序博客网 时间:2024/05/17 00:02
元数据属性应用于服务器控件及其成员,从而提供由设计工具、ASP.NET 页分析器、ASP.NET 运行库以及公共语言运行库使用的信息。当页开发人员在可视化设计器中使用控件时,设计时属性能改进开发人员的设计时体验。仅用于设计时的属性在页请求期间对控件的功能没有任何影响。控件的分析时属性由 ASP.NET 页分析器在其读取页中控件的声明性语法时使用。分析时属性和运行时属性是保证控件在页中正常工作必不可少的内容。
本主题描述常用于控件及其公共属性 (Property) 和事件的元数据属性 (Attribute)。
应用于控件的属性
属性
示例
JIT 编译时代码访问安全属性。
需要使用此属性确保链接到控件的代码具有适当的安全权限。
AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)
和 AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)。
应将第一个属性应用于控件,但并非必须应用第二个属性,因为继承请求是可传递的,在派生类中仍有效。有关更多信息,请参见
[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件。
分析时属性。
将自定义控件生成器与控件关联。只有在您希望使用自定义控件生成器,对页分析器用于分析控件的声明性语法的默认逻辑进行修改时,才需要应用此属性。如果仅希望指定控件标记中的内容是否与属性或子控件对应,请使用
[ControlBuilder(typeof(MyControlBuilder))]
设计时和运行时属性。
指定用作控件的默认值的属性。应用此属性可让一个控件在运行时用作查询中的参数,并可定义
[ControlValueProperty("Text")]
设计时属性。
在可视化设计器中指定控件的默认事件。在许多可视化设计器中,页开发人员在设计图面上双击控件时,将打开代码编辑器,同时将光标定位到默认事件的事件处理程序中。
[DefaultEvent("Submit")]
应用于复合 Web 控件示例中的 Register 示例控件。
设计时属性。
当页开发人员在设计图面上选择控件时,此属性 (Attribute) 中指定的属性 (Property) 将在可视化设计器的属性 (Property) 浏览器中突出显示。
[DefaultProperty("Text")]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件。
设计时属性。
指定与控件关联的设计器类。控件设计器类控制关联的控件在可视化设计器的设计图面上的外观和行为。
[Designer(typeof(SimpleCompositeControlDesigner))]
应用于 演练:为 Web 服务器控件创建基本控件设计器 中的示例控件。
分析时属性。
指定控件标记中的内容是否与属性或子控件对应。
[ParseChildren(true, "Contacts")]
应用于 Web 控件集合属性示例中的 QuickContacts 示例控件。
设计时属性。
指定当以声明方式在页中使用控件时,可视化设计器是否应在该控件的标记中保存子控件或属性。
[PersistChildren(false)]
应用于
分析时属性。
指定控件是否受主题或控件外观的影响。如果标记某一控件类型以指示不能向其应用主题,则该控件的所有成员同样也不受主题的影响。
[Themeable(false)]
应用上一示例中所示的属性以防止控件及其所有成员受主题或控件外观的影响。
设计时属性。
指定从工具箱创建控件时可视化设计器为标记创建的标记格式。
[ToolboxData("<{0}:WelcomeLabel runat=/"server/"> </{0}:WelcomeLabel>"]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件。
设计时属性。
指定可视化设计器应在工具箱中显示控件还是组件。默认情况下,始终在工具箱中显示控件。此属性只能应用于不希望在工具箱中显示的控件(如模板属性的所有者)。
[ToolboxItem(false)]
应用于模板化服务器控件示例中的 TemplateOwner 控件。
设计时属性。
指定由验证控件检查的属性的名称。通常这些属性的值由用户在运行时提供,如
[ValidationProperty("Text")]
应用于公共属性 (Property) 的属性 (Attribute)
属性
示例
设计时属性。
指定将数据绑定到属性是否有意义。在可视化设计器中,属性浏览器可以在对话框中显示控件的可绑定属性。(例如,在 Visual Studio 中,可绑定属性显示在“数据绑定”对话框中。) 如果属性 (Property) 没有使用此属性 (Attribute) 标记,则属性 (Property) 浏览器会推断其值为 Bindable(false)。
[Bindable(true)]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件的 Text 属性。
设计时属性。
指定是否应在可视化设计器的属性浏览器中显示某个属性。 将 Browsable(false) 应用于不希望在属性浏览器中显示的属性。没有通过此属性 (Attribute) 标记某个属性 (Property) 时,属性浏览器会推断其默认值为 Browsable(true)。
[Browsable(false)]
应用于模板化服务器控件示例中的 VacationHome 示例控件中的 Template 属性。
设计时属性。
指定如何在可视化设计器的属性浏览器中对属性进行分类。例如,当页开发人员在属性浏览器中使用分类视图时,Category("Appearance") 将告知属性浏览器在“外观”类别中显示属性。可以指定一个对应于属性浏览器中的现有类别的字符串参数,也可以创建自己的类别。
[Category("Appearance")]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件的 Text 属性
设计时属性。
指定属性的默认值。此值应与从属性访问器 (getter) 返回的默认值相同。在有些可视化设计器(如 Visual Studio)中,
[DefaultValue("")]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件的 Text 属性
设计时属性。
指定属性的简短描述。在可视化设计器(如 Visual Studio)中,属性浏览器通常在窗口底部显示选定的属性的描述。
[Description("The welcome message text.")]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件的 Text 属性
设计时属性。
指定是否对设计时设置的属性或其内容(如子属性或集合项)进行序列化。该属性的构造函数的参数是一个
[DesignerSerializationVisibility
(DesignerSerializationVisibility.Content)]
应用于服务器控件属性示例中的 Book 示例控件的 Author 属性。
设计时属性。
将自定义
[Editor(typeof(ContactCollectionEditor), typeof(UITypeEditor))]
应用于 Web 控件集合属性示例中的 QuickContacts 示例控件的 Contacts 属性。
设计时属性。
指定属性名称是否显示在源编辑器的 IntelliSense 列表中。也可将此属性应用于方法和事件。此属性的构造函数的参数是一个
[EditorBrowsableAttribute
(EditorBrowsableState.Never)]
应用前面示例中演示的属性,以隐藏 IntelliSense 中的成员。
设计时和分析时属性。
指定某个属性是否能参与设备和浏览器筛选。页开发人员利用筛选能在一个控件声明中为不同的浏览器指定不同的属性值。例如,页开发人员可以使用筛选为
<asp:Label UP:Text="Hello" and IE:Text="Welcome to my site" runat="server" />
“UP”和“IE”是浏览器筛选器。未应用此属性时,则暗示使用默认值 Filterable(true)。
[Filterable(false)]
应用前面示例中演示的属性 (Attribute) 以从设备和浏览器筛选中排除某个属性 (Property)。
设计时属性。
指定对属性进行本地化是否有意义。如果一个属性标记为 Localizable(true),则对应的属性值存储在资源文件中。未应用此属性时,则暗示使用默认值 Localizable(false)。
[Localizable(true)]
应用于演练:开发和使用自定义服务器控件中的 WelcomeLabel 示例控件的 Text 属性。
设计时属性。
指定在属性浏览器中对子属性所做的更改应传播到父属性。
[NotifyParentProperty(true)]
应用于服务器控件属性示例中定义的 Author 类型的 FirstName、LastName 和 MiddleName 属性。
设计时属性。
指定是将属性 (Property) 保存为控件标记上的属性 (Attribute),还是将其保存为控件标记中的嵌套内容。此属性的构造函数的参数是一个
[PersistenceMode(PersistenceMode.InnerProperty)]
应用于服务器控件属性示例中的 Book 示例控件的 Author 属性。
设计时和分析时属性。
为返回
[TemplateContainer(typeof(CustomTemplateContainer))]
应用上一示例中所示的属性 (Attribute) 以指定
设计时和分析时属性。
指定模板属性允许创建单个实例还是多个实例。如果未使用
[TemplateInstance(TemplateInstance.Single)]
应用上一示例中所示的属性 (Attribute) 以指定只能创建一个模板属性 (Property) 实例。
分析时属性。
指定控件成员是否可以受主题或控件外观的影响。默认情况下,如果控件类型本身可应用主题,则该控件公开的所有属性都可以应用主题。
[Themeable(false)]
应用上一示例中所示的属性以防止控件成员受主题或控件外观的影响。
设计时、分析时和运行时属性。
将类型转换器与某个属性或属性类型关联。类型转换器执行从字符串表示形式到指定类型(或相反)的转换。
[TypeConverter(typeof(AuthorConverter))]
应用于服务器控件属性示例中定义的 Author 类型。
设计时和运行时属性。
指定一个字符串属性表示一个 URL 值,利用此值可以将 URL 生成器与该属性关联起来。
[UrlProperty("*.aspx",AllowedTypes=UrlTypes.Absolute|UrlTypes.RootRelative|UrlTypes.AppRelative)]
应用于为 ASP.NET 文件设置特定的文件筛选器,并且允许绝对路径和相对路径。
应用于事件成员的属性
应用于事件成员的主属性包括三个设计时属性:
- 自定义服务器控件的元数据属性
- 自定义服务器控件的元数据属性
- 服务器控件自定义属性FAQ
- 自定义控件的属性
- 自定义控件的属性
- 控件的自定义属性
- 自定义控件的属性
- 自定义控件的自定义属性
- 自定义控件的自定义属性
- 自定义控件--自定义控件的属性
- asp.net 自定义服务器控件属性
- 自定义控件属性的特性
- Android自定义控件的属性
- Android自定义控件的属性
- 08自定义控件的属性
- 自定义控件的属性详解
- Android 自定义控件的属性
- 自定义View控件的属性
- 用C#创建Windows服务(Windows Services)
- CLR 的线程池
- Linux设备文件简介
- C++宏 复习
- 串口监视的源程序代码(C++)
- 自定义服务器控件的元数据属性
- Debug Diagnostic 1.1 工具现已推出
- 百度的招聘系统很容易导致IE崩溃?
- 分布式系统的容错性(二)——检错和纠错
- [C#/C++]C#调用非托管DLL的APIs
- SharePoint中如何获得当前用户的loginName
- 让你的windows时间与标准时间同步
- 分页分析
- Sybase 常用操作方法