C 自定義控制項屬性

2021-06-22 10:42:55 字數 1138 閱讀 4360

寫在前面:在開發自定義控制項件時,有好些design屬性是要使用的,如toolboxitem, toolboxbitmap, category, description等等,不知道這些屬性其實也可以將控制項搞出來,不過,知道了,會令事件更加簡單,令控制項更加專業和實用。有時,不知道用法,會令到專案的其他同事好煩,因為這個控制項是你提供的。下面對一些常用的design屬性做乙個簡單的生產介紹。

toolboxitem

有沒有試過寫乙個使用者控制項後,想它不出現在工具箱中,當然有,有時候是控制項的designer部分沒有寫好或沒寫,有時候是控制項一拖出來就報錯,有時候是內部使用的控制項,不想別人一引用dll就出現控制項。其它設定方法可以很簡單。

[toolboxitem(false)]

public class mypanel : usercontrol

這樣就可以了。「可惡」的使用者控制項就自動隱藏了,不出現在工具箱中。不過,如果你不知道這樣的話,可以會引來一大堆的煩事。

defaultvalue

[defaultvalue(typeof(color), "darkgray")]

public system.drawing.color shadowcolor set }

用於設定預設的值,對於string,bool,int,可以直接寫出來,如[defaultvalue(10)],這是可以的,不過,不是這三種型別的話,就比較麻煩,一定要先轉化為string才能設定成功。如上面的darkgray,這是系統定義的顏色,這還是比較好處理的。不過,如果是一些自定義的顏色,如顏色是128,0,128,你應該將128轉為16進製制,寫成0x800080,字首0x是一定要加的。最後就這樣

[defaultvalue(typeof(color), "0x800080")]

browsable

表示,是否在屬性面板中顯示這個屬性

[browsable(true)]

表示,將在屬性面板中顯示這個屬性。

designerserializationvisibility

表示,是否在*.designer.cs檔案中將設定的**寫出來,也就是是否要實現序列化

[designerserializationvisibility(designerserializationvisibility.visible)]

表示需要實現序列化。

自定義控制項及自定義屬性

自定義控制項在android開發中的重要性,是不言而喻,眾人皆知的。希望通過這二天的學習,能讓大家了解自定義控制項的原理,熟悉自定義控制項的使用步驟,並能寫出一些普通的效果。內容介紹 1 使用系統控制項,實現自定義的效果,案例有 優酷環形選單 廣告條 viewpager 下拉列表 spinner 2...

Android自定義控制項 自定義屬性

自定義屬性的過程 1.在res values資料夾中建立attrs的xml檔案。2.寫入標籤,定義子標籤attr,放入自定義屬性的名稱。format 可以用 來同時使用 1 reference 參考某一資源id 2 color 顏色值 3 boolean 布林值 4 dimension 尺寸值 帶有...

自定義控制項7 自定義屬性二

問題1 format reference color 比如自定義乙個按鈕,背景有可能是顏色也有可能是,該如何去獲取該屬性?問題2 typedvalue是什麼鬼東西?問題3 getfraction index,base,pbase,defvalue 中的第2,3個引數是幹什麼的?我的解決方法 if a...