這個(gè)功能實(shí)現(xiàn)起來(lái)其實(shí)也很簡(jiǎn)單,就是通過(guò)反射去讀取 DescriptionAttribute 的 Description 屬性的值,代碼如下所示:
作為一家“創(chuàng)意+整合+營(yíng)銷”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們?cè)跇I(yè)內(nèi)良好的客戶口碑。創(chuàng)新互聯(lián)公司提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)站建設(shè)、創(chuàng)意表現(xiàn)、網(wǎng)頁(yè)制作、系統(tǒng)開(kāi)發(fā)以及后續(xù)網(wǎng)站營(yíng)銷運(yùn)營(yíng)等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營(yíng)模式與有效的網(wǎng)絡(luò)營(yíng)銷方法,創(chuàng)造更大的價(jià)值。
/// summary
/// 返回枚舉項(xiàng)的描述信息。
/// /summary
/// param name="value"要獲取描述信息的枚舉項(xiàng)。/param
/// returns枚舉想的描述信息。/returns
public static string GetDescription(Enum value)
{
Type enumType = value.GetType();
// 獲取枚舉常數(shù)名稱。
string name = Enum.GetName(enumType, value);
if (name != null)
{
// 獲取枚舉字段。
FieldInfo fieldInfo = enumType.GetField(name);
if (fieldInfo != null)
{
// 獲取描述的屬性。
DescriptionAttribute attr = Attribute.GetCustomAttribute(fieldInfo,
typeof(DescriptionAttribute), false) as DescriptionAttribute;
if (attr != null)
{
return attr.Description;
}
}
}
return null;
}
這段代碼還是很容易看懂的,這里取得枚舉常數(shù)的名稱使用的是 Enum.GetName() 而不是 ToString(),因?yàn)榍罢吒?,而且?duì)于不是枚舉常數(shù)的值會(huì)返回 null,不用進(jìn)行額外的反射。
當(dāng)然,這段代碼僅是一個(gè)簡(jiǎn)單的示例,接下來(lái)會(huì)進(jìn)行更詳細(xì)的分析。
為什么增加的回答這么久還沒(méi)顯示。
我想知道你為什么要枚舉這些方法,是需要打印出來(lái)還是只是為了查看和調(diào)用?
1,如果只是為了查看和調(diào)用的話,不需要用代碼就能知道了。
打開(kāi)VS,視圖-》對(duì)象瀏覽器。然后開(kāi)了后,點(diǎn)瀏覽右邊的“。。?!保_(kāi)了后。選COM活頁(yè),再在里面選ThunderAgent 1.0 Type Library。再點(diǎn)添加。
添加好之后。在左邊的瀏覽窗口內(nèi)就有了,展開(kāi)THUNDERAGENTLib下面有幾個(gè)類和接口,展開(kāi)類就有方法了。
2,如果是需要用代碼枚舉并打印。網(wǎng)上有相關(guān)的代碼,C#寫(xiě)的。我就不帖了。自己搜一下。改成vb.net相信應(yīng)該不會(huì)太難。
祝你好運(yùn)。
Enum Week
周日 = 0
周一 = 1
周二 = 2
周三 = 3
周四 = 4
周五 = 5
周六 = 6
End Enum
Sub Main()
Dim myType As Type = GetType(Week)
MsgBox(Week.GetName(myType, Week.周二))
End Sub
分享題目:枚舉激活vb.net vba 枚舉
網(wǎng)頁(yè)路徑:http://jinyejixie.com/article0/dohppoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、品牌網(wǎng)站建設(shè)、外貿(mào)建站、企業(yè)網(wǎng)站制作、企業(yè)建站、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)