• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        自定義組件之屬性(Property)的性質(Attribute)介紹(二)

        自定義組件之屬性(Property)的性質(Attribute)介紹(二)

        更新時間:2022-05-16 文章作者:未知 信息來源:網絡 閱讀次數:

        一:屬性轉換器(TypeConverter)

        1、 下拉列表框的形式:

        要使用下拉列表框的形式的屬性我們首先要定義一個屬性,在這個例子中我定義了一個字符串類型的屬性 FileName。

        private string _fileName;



        public string FileName

        {

        get { return this._fileName;}

        set { this._fileName=value; }

        }

        定義完屬性之后,我們還要自己一個屬性轉換器。那么什么是屬性轉換器呢?其實在屬性瀏覽器中只能夠識別字符串類型,所以我們要通過屬性轉換器把我們的屬性轉換成字符串,還要在屬性瀏覽器改變這個字符串之后在把這個字符串轉換成我們自己的屬性。大家聽起來是不是有一些胡涂了?沒關系下面我們做一個屬性轉換器大家就知道了。

        因為在本例中用的屬性是字符串類型的所以我們要從System.ComponentModel.StringConverter繼承一個新的字符串形式的屬性轉換器。下面就是這段代碼和代碼中的注釋,相信大家一定能夠看懂的:

        /// <summary>

        /// 擴展字符串的轉換器(實現下拉列表框的樣式)

        /// </summary>

        public class FileNameConverter:System.ComponentModel.StringConverter

        {





        /// <summary>

        /// 根據返回值確定是否支持下拉框的形式

        /// </summary>

        /// <returns>

        /// true: 下來框的形式

        /// false: 普通文本編輯的形式

        /// </returns>

        public override bool GetStandardValuesSupported(System.ComponentModel.ITypeDescriptorContext context)

        {

        return true;

        }



        /// <summary>

        /// 下拉框中具體的內容

        /// </summary>

        public override System.ComponentModel.TypeConverter.StandardValuesCollection GetStandardValues(System.ComponentModel.ITypeDescriptorContext context)

        {

        return new StandardValuesCollection(new string[]{"File1.bat","File2.exe","File3.dll"});

        }



        /// <summary>

        /// 根據返回值確定是否是不可編輯的文本框

        /// </summary>

        /// <returns>

        /// true: 文本框不可以編輯

        /// flase: 文本框可以編輯

        /// </returns>

        public override bool GetStandardValuesExclusive(System.ComponentModel.ITypeDescriptorContext context)

        {

        return true;



        }

        好了,屬性轉換器寫完了,最后別忘了把這個屬性轉換器指定到我們剛才所寫的屬性上哦,代碼如下:

        [CategoryAttribute("自定義的復雜類型設置(包括自定義類型轉換器)"),

        TypeConverterAttribute(typeof(PropertyGridApp.FileNameConverter)),

        ReadOnlyAttribute(false)]

        public string FileName

        {

        get { return this._fileName;}

        set { this._fileName=value; }

        }

        編譯之后的程序畫面如下

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: a级成人毛片免费图片| 国产精品亚洲精品久久精品 | 久久一区二区三区免费播放| 无码欧精品亚洲日韩一区夜夜嗨 | 亚洲国产最大av| 亚洲毛片在线免费观看| 亚洲天堂福利视频| 成人免费毛片视频| 亚洲精品第一国产综合亚AV| 国产精品麻豆免费版| 日韩在线视精品在亚洲| 亚洲国产午夜福利在线播放| 在线观看黄片免费入口不卡| 亚洲av网址在线观看| 色老头永久免费网站| 亚洲七久久之综合七久久| 国产精品视_精品国产免费| 高潮毛片无遮挡高清免费视频| 亚洲国产V高清在线观看| 一级一级毛片免费播放| 亚洲2022国产成人精品无码区| 亚洲免费观看网站| 亚洲成AV人影片在线观看| 免费中文字幕在线观看| a毛片全部免费播放| 亚洲成a人片77777群色| 国产老女人精品免费视频| 抽搐一进一出gif免费视频| 亚洲黄色在线观看网站| 天堂在线免费观看中文版| 一级毛片a免费播放王色| 久久亚洲精品成人无码网站| 日韩视频免费在线| 中文字幕免费在线看电影大全| 亚洲成年人电影在线观看| 日本大片在线看黄a∨免费| 在线免费观看伊人三级电影| 亚洲人成电影网站| 丁香五月亚洲综合深深爱| 四虎永久在线精品免费观看视频| 黄页视频在线观看免费|