国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

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

2024-07-21 02:24:25
字體:
來源:轉載
供稿:網友
,歡迎訪問網頁設計愛好者web開發。一:屬性轉換器(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; }

}

編譯之后的程序畫面如下
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 横峰县| 德安县| 垣曲县| 南开区| 宁国市| 资溪县| 新邵县| 平邑县| 松溪县| 临安市| 彰化县| 醴陵市| 板桥市| 武夷山市| 奇台县| 镶黄旗| 青州市| 丰原市| 陕西省| 永善县| 遵义县| 德昌县| 云安县| 长丰县| 明溪县| 定兴县| 正宁县| 孝感市| 调兵山市| 连南| 怀集县| 万荣县| 双城市| 夏津县| 神木县| 阿克苏市| 白沙| 慈溪市| 黑水县| 天峨县| 宾阳县|