﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » Business Objects and Data Access (How do I?)  » Accessing EnumDisplayValue programmatically</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Tue, 09 Jun 2026 00:18:10 GMT</lastBuildDate><ttl>20</ttl><item><title>Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18577.aspx</link><description>Hello,&lt;P&gt;Lets seay I have this enum type:&lt;/P&gt;&lt;P&gt;[codesnippet]&lt;/P&gt;&lt;P&gt;&amp;nbsp;public enum MyEnum&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [EnumDisplayValue("This is&amp;nbsp;Value 1")]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; value1 = 1,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [EnumDisplayValue("This is&amp;nbsp;Value 2")]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; value2 = 2&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;[/codesnippet]&lt;/P&gt;&lt;P&gt;Now consider this code:&lt;/P&gt;&lt;P&gt;[codesnippet]&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;MyEnum myEnum = MyEnum.value2;&lt;BR&gt;MessageBox.Show(myEnum.ToString()); &lt;/P&gt;&lt;P&gt;[/codesnippet]&lt;/P&gt;&lt;P&gt;The&amp;nbsp;messagebox displays "value2", but I would like to see EnumDisplayValue "This is&amp;nbsp;Value 2". &lt;/P&gt;&lt;P&gt;Is there an easy&amp;nbsp;way to get the value of that attribute? I have a feeling I need to use reflections to get it.&lt;/P&gt;&lt;P&gt;Thank you for your help.</description><pubDate>Wed, 20 Aug 2008 09:08:48 GMT</pubDate><dc:creator>Leonard P.</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18623.aspx</link><description>Honestly Trent, catch up :D.</description><pubDate>Wed, 20 Aug 2008 09:08:48 GMT</pubDate><dc:creator>Dustin Taylor</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18619.aspx</link><description>LOL...I just saw that Dustin already mentioned it :D</description><pubDate>Wed, 20 Aug 2008 09:02:43 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18617.aspx</link><description>You could do all of that to get the EnumDisplayValue or...&lt;/P&gt;&lt;P&gt;[codesnippet]MyEnum myEnum = MyEnum.value2;&lt;BR&gt;MessageBox.Show(MicroFour.StrataFrame.Tools.Common.GetEnumDisplayValue(myEnum)); [/codesnippet]&lt;/P&gt;&lt;P&gt;The framework already has a mechanism for you to do this...and it reduces the code by a lot! ;)</description><pubDate>Wed, 20 Aug 2008 09:00:07 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18610.aspx</link><description>[quote][b]Dustin Taylor (08/19/2008)[/b][hr]Good solutions! :D&lt;P&gt;For future reference, there is also a built-in function in StrataFrame to do this very thing. MicroFour.StrataFrame.Tools.Common.GetEnumDisplayValue(yourEnum).[/quote]&lt;P&gt;Hi Dustin, &lt;P&gt;In this very same topic, today I just hit an Enum Display problem in a Dialog Browser in which the enum is not properly displayed when selected in field for the browser result set as in this picture:&lt;/P&gt;&lt;P&gt;&lt;IMG src="http://forum.strataframe.net/Uploads/Images/08826160-b3c5-4c6b-9fc9-f789.png"&gt;&lt;/P&gt;&lt;P&gt;I guess the SF combobox&amp;nbsp;is using the &lt;FONT size=2&gt;MicroFour.StrataFrame.Tools.Common.GetEnumDisplayValue(EnumValue) but the field in the browser result is not.&amp;nbsp; I fixed my code by changing my DB class and populate the CustomerType field throug the RowPopulating event which works nice, but I wonder if the framework should use the GetEnumDisplayValue() every where an enum is used.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;Here is my BD code:&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;[quote]&lt;FONT color=#0000ff size=2&gt;&lt;/P&gt;&lt;P&gt;Public&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Class&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#000000&gt; CustomerBrowserDialog&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; CustomerBrowserDialog_RowPopulating(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; MicroFour.StrataFrame.UI.Windows.Forms.RowPopulatingEventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.RowPopulating&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;'-- Strong type the passed business object&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; With&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;CType&lt;/FONT&gt;&lt;FONT size=2&gt;(e.BusinessObject, atr_crm.Business.bizCustomers)&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;'-- Format the customer type enum to display properly.&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;e.Values(4).DisplayValue = MicroFour.StrataFrame.Tools.Common.GetEnumDisplayValue(.CustomerType)&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;With&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;&lt;P&gt;End&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Class&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;[/quote]&lt;/P&gt;&lt;P&gt;BTW, thanks to Greg and Leonard, this post came up just on time with my situation, even though I used Dustin approach :D.&lt;/P&gt;&lt;/FONT&gt;</description><pubDate>Tue, 19 Aug 2008 23:02:19 GMT</pubDate><dc:creator>Edhy Rijo</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18609.aspx</link><description>Now he tells us....  :P</description><pubDate>Tue, 19 Aug 2008 22:25:28 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18603.aspx</link><description>Good solutions! :D&lt;/P&gt;&lt;P&gt;For future reference, there is also a built-in function in StrataFrame to do this very thing. MicroFour.StrataFrame.Tools.Common.GetEnumDisplayValue(yourEnum).</description><pubDate>Tue, 19 Aug 2008 21:33:29 GMT</pubDate><dc:creator>Dustin Taylor</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18602.aspx</link><description>Ooh, I like the generics....think I'll update my code to use it! Thanks back at ya! :w00t:</description><pubDate>Tue, 19 Aug 2008 18:28:23 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18592.aspx</link><description>Thanks Greg!&lt;P&gt;This is pretty much what I did at first (only with Generic method and looping through fields and attributes using reflections) :&lt;/P&gt;&lt;P&gt;[codesnippet]&lt;/P&gt;&lt;P&gt;private static string GetDisplayValueType&amp;lt;T&amp;gt;(Enum customEnum) where T : struct&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string retValue = string.Empty;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (FieldInfo field in typeof(T).GetFields(BindingFlags.Static | BindingFlags.GetField | BindingFlags.Public))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; object value = field.GetValue(null);&lt;/P&gt;&lt;P&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (Attribute attrib in field.GetCustomAttributes(true))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (attrib is EnumDisplayValueAttribute)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnumDisplayValueAttribute customAttr = (EnumDisplayValueAttribute)attrib;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (customEnum.Equals(value))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retValue = customAttr.ValueOrKey;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return retValue;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;[/codesnippet]&lt;/P&gt;&lt;P&gt;Using your&amp;nbsp;code, I was able to get rid of loops:&lt;/P&gt;&lt;P&gt;[codesnippet]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static string GetDisplayValueType1&amp;lt;T&amp;gt;(Enum customEnum) where T : struct&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string desc = string.Empty;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FieldInfo field = typeof(T).GetField(Enum.GetName(typeof(T), customEnum));&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnumDisplayValueAttribute descrAttr = (EnumDisplayValueAttribute)Attribute.GetCustomAttribute(field, typeof(EnumDisplayValueAttribute));&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (descrAttr != null)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; desc = descrAttr.ValueOrKey;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; desc = customEnum.ToString();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return desc;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;[/codesnippet]&lt;/P&gt;&lt;P&gt;The second function looks much cleaner :) Thanks!</description><pubDate>Tue, 19 Aug 2008 13:27:45 GMT</pubDate><dc:creator>Leonard P.</dc:creator></item><item><title>RE: Accessing EnumDisplayValue programmatically</title><link>http://forum.strataframe.net/FindPost18587.aspx</link><description>Leonard,&lt;br&gt;
&lt;br&gt;
This is what I use:&lt;br&gt;
&lt;br&gt;
[codesnippet]  ''' &amp;lt;summary&amp;gt;&lt;br&gt;
  ''' Give an enum type and a value, return the display text for &lt;br&gt;
  ''' that value. This will use the EnumDisplayValueAttribute if &lt;br&gt;
  ''' the enum has one defined.&lt;br&gt;
  ''' &amp;lt;/summary&amp;gt;&lt;br&gt;
  ''' &amp;lt;param name="enumType"&amp;gt;type of enum&amp;lt;/param&amp;gt;&lt;br&gt;
  ''' &amp;lt;param name="value"&amp;gt;value to lookup&amp;lt;/param&amp;gt;&lt;br&gt;
  Public Shared Function GetEnumDisplayText(ByVal enumType As Type, ByVal value As Object) As String&lt;br&gt;
&amp;nbsp;&amp;nbsp;'-- Establish a return variable&lt;br&gt;
&amp;nbsp;&amp;nbsp;Dim desc As String = String.Empty&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;Dim fi As FieldInfo = enumType.GetField(System.Enum.GetName(enumType, value))&lt;br&gt;
&amp;nbsp;&amp;nbsp;Dim descAttr As EnumDisplayValueAttribute = DirectCast(Attribute.GetCustomAttribute(fi, GetType(EnumDisplayValueAttribute)), EnumDisplayValueAttribute)&lt;br&gt;
&amp;nbsp;&amp;nbsp;If descAttr IsNot Nothing Then&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;desc = descAttr.GetDisplayValue()&lt;br&gt;
&amp;nbsp;&amp;nbsp;Else&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;desc = value.ToString()&lt;br&gt;
&amp;nbsp;&amp;nbsp;End If&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;'-- Return the enum description/name&lt;br&gt;
&amp;nbsp;&amp;nbsp;Return desc&lt;br&gt;
  End Function&lt;br&gt;
[/codesnippet]</description><pubDate>Tue, 19 Aug 2008 12:50:29 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item></channel></rss>