社区编辑申请
注册/登录
浅析Attribute在C# WinForm控件开发中的使用
开发 后端
这里向你介绍Attribute在C# WinForm控件开发中的使用的具体步骤和常用的方法属性,以及各自的含义,希望对你了解和掌握Attribute在C# WinForm控件开发中的使用有所帮助。

Attribute在C# WinForm控件开发中的使用是如何的呢?我们在之前的文章中提到了Attribute,那么具体的在开发实战中是如何运用的呢?需要注意什么呢?来让我们看看一个Attribute在C# WinForm控件开发中的使用的实例。

Attribute在C# WinForm控件开发中的使用的实例

这个类是直接从Control类派生出来的,自定义控件都是直接从Control类派生出来的。这个类定义了一个属性TextAlignment,用来控制文本在控件中显示的位置:

  1. [  
  2. Category("Alignment"),  
  3. Description("Specifies the alignment of text.")  
  4. ]  
  5. public ContentAlignment TextAlignment  
  6. {  
  7. get 
  8. {  
  9.  return alignmentValue;  
  10. }  
  11. set 
  12. {  
  13.  alignmentValue = value;  
  14.  // The Invalidate method invokes the OnPaint method described   
  15.  // in step 3.  
  16.  Invalidate();  
  17. }  

在这个属性之上有两个Attribute,这两个attribute描述了控件在设计时所表现出来的特征。我们来看看在控件设计中有哪些主要用到的设计时Attribute。
Attribute在C# WinForm控件开发中的使用所用到的属性:

◆BrowsableAttribute:描述是否一个属性或事件应该被显示在属性浏览器里。

◆CategoryAttribute:描述一个属性或事件的类别,当使用类别的时候,属性浏览器按类别将属性分组。

◆DescriptionAttribute:当用户在属性浏览器里选择属性的时候,description里指定的文本会显示在属性浏览器的下边,向用户显示属性的功能。

◆BindableAttribute:描述是否一个属性倾向于被绑定。

◆DefaultPropertyAttribute:为组件指定一个默认的属性,当用户在Form设计器上选择一个控件的时候,默认属性会在属性浏览器里被选中。

◆DefaultValueAttribute:为一个简单类型的属性设置一个默认值。

◆EditorAttribute:为属性指定一个特殊的编辑器。

◆LocalizableAttribute:指示一个属性是否能被本地化,任何有这个Attribute的属性将会被持久化到资源文件里。

◆DesignerSerializationVisibilityAttribute:指示一个属性是否或者如何持久化到代码里。

◆TypeConverterAttribute:为属性指定一个类型转换器,类型转换器能将属性的值转化成其它的数据类型。

◆DefaultEventAttribute:为组件指定一个默认的事件,当用户在form设计其中选择一个控件的时候,在属性浏览器中这个事件被选中。

这些设计时的Attribute时很重要的,如果使用的好,将会对用户的使用带来很大的便利。

那么关于Attribute在C# WinForm控件开发中的使用内容就向你介绍到这里,希望对你了解和学习Attribute在C# WinForm控件开发中的使用有所帮助。

【编辑推荐】

  1. 详解TripleDES实现C# 加密操作
  2. 浅析C# WinForm控件开发前期准备
  3. 详解C# WinForm自定义控件的使用和调试
  4. C# Attribute的概念与使用浅析
  5. C# AttributeUsage的使用浅析
责任编辑:仲衡 来源: pconline.com.cn
相关推荐

2009-08-20 09:30:03

C#开发WinForm

2009-09-11 12:07:12

2009-09-11 11:04:23

2009-12-28 10:40:13

WPF调用Winfor

2009-08-20 10:24:52

C#开发WinForm

2009-08-05 17:03:37

C#自定义控件

2009-09-11 12:17:59

C#控件属性

2009-09-07 03:58:42

WinForm传值

2009-08-06 09:18:01

ASP.NET自定义控ASP.NET控件开发

2009-09-16 10:56:22

2009-09-17 16:41:12

C#组件编程

2010-12-30 09:44:10

C#Attribute

2009-08-06 13:08:23

ASP.NET控件开发

2009-08-14 17:36:20

C#Windows应用

2009-08-25 17:59:49

C#入门

2009-09-11 11:27:38

AttributeUsC# Attribut

2009-07-30 16:56:14

C#时间控件

2009-08-04 14:25:09

2021-04-14 07:47:59

AttributeC#属性

2009-09-07 06:07:46

同话题下的热门内容

太强了!Python 开发桌面小工具,让代码替我们干重复的工作!Python轻量级Web框架:Bottle库!Python居然被用来开发游戏了?盘点你想不到的Python开发场景用了那么久的Lombok,你知道它的原理么?实战 | 如何用 Python 自动化监控文件夹完成服务部署!Fury:一个基于JIT动态编译的高性能多语言原生序列化框架细思恐极,插上U盘就开始执行Python代码为什么 Python、Ruby 等语言弃用了自增运算符?

编辑推荐

使用Kotlin做开发一个月后的感想面试官问你什么是消息队列?把这篇甩给他!五大自动化测试的Python框架图文详解两种算法:深度优先遍历(DFS)和广度优先遍历(BFS)2018年最流行的十大编程语言,其中包括你用的语言吗?
我收藏的内容
点赞
收藏

51CTO技术栈公众号