淺析Attribute在C# WinForm控件開發(fā)中的使用
Attribute在C# WinForm控件開發(fā)中的使用是如何的呢?我們?cè)?A >之前的文章中提到了Attribute,那么具體的在開發(fā)實(shí)戰(zhàn)中是如何運(yùn)用的呢?需要注意什么呢?來(lái)讓我們看看一個(gè)Attribute在C# WinForm控件開發(fā)中的使用的實(shí)例。
Attribute在C# WinForm控件開發(fā)中的使用的實(shí)例
這個(gè)類是直接從Control類派生出來(lái)的,自定義控件都是直接從Control類派生出來(lái)的。這個(gè)類定義了一個(gè)屬性TextAlignment,用來(lái)控制文本在控件中顯示的位置:
- [
- Category("Alignment"),
- Description("Specifies the alignment of text.")
- ]
- public ContentAlignment TextAlignment
- {
- get
- {
- return alignmentValue;
- }
- set
- {
- alignmentValue = value;
- // The Invalidate method invokes the OnPaint method described
- // in step 3.
- Invalidate();
- }
- }
在這個(gè)屬性之上有兩個(gè)Attribute,這兩個(gè)attribute描述了控件在設(shè)計(jì)時(shí)所表現(xiàn)出來(lái)的特征。我們來(lái)看看在控件設(shè)計(jì)中有哪些主要用到的設(shè)計(jì)時(shí)Attribute。
Attribute在C# WinForm控件開發(fā)中的使用所用到的屬性:
◆BrowsableAttribute:描述是否一個(gè)屬性或事件應(yīng)該被顯示在屬性瀏覽器里。
◆CategoryAttribute:描述一個(gè)屬性或事件的類別,當(dāng)使用類別的時(shí)候,屬性瀏覽器按類別將屬性分組。
◆DescriptionAttribute:當(dāng)用戶在屬性瀏覽器里選擇屬性的時(shí)候,description里指定的文本會(huì)顯示在屬性瀏覽器的下邊,向用戶顯示屬性的功能。
◆BindableAttribute:描述是否一個(gè)屬性傾向于被綁定。
◆DefaultPropertyAttribute:為組件指定一個(gè)默認(rèn)的屬性,當(dāng)用戶在Form設(shè)計(jì)器上選擇一個(gè)控件的時(shí)候,默認(rèn)屬性會(huì)在屬性瀏覽器里被選中。
◆DefaultValueAttribute:為一個(gè)簡(jiǎn)單類型的屬性設(shè)置一個(gè)默認(rèn)值。
◆EditorAttribute:為屬性指定一個(gè)特殊的編輯器。
◆LocalizableAttribute:指示一個(gè)屬性是否能被本地化,任何有這個(gè)Attribute的屬性將會(huì)被持久化到資源文件里。
◆DesignerSerializationVisibilityAttribute:指示一個(gè)屬性是否或者如何持久化到代碼里。
◆TypeConverterAttribute:為屬性指定一個(gè)類型轉(zhuǎn)換器,類型轉(zhuǎn)換器能將屬性的值轉(zhuǎn)化成其它的數(shù)據(jù)類型。
◆DefaultEventAttribute:為組件指定一個(gè)默認(rèn)的事件,當(dāng)用戶在form設(shè)計(jì)其中選擇一個(gè)控件的時(shí)候,在屬性瀏覽器中這個(gè)事件被選中。
這些設(shè)計(jì)時(shí)的Attribute時(shí)很重要的,如果使用的好,將會(huì)對(duì)用戶的使用帶來(lái)很大的便利。
那么關(guān)于Attribute在C# WinForm控件開發(fā)中的使用內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)Attribute在C# WinForm控件開發(fā)中的使用有所幫助。
【編輯推薦】