<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Getting Started</title><link>http://forums.asp.net/15.aspx</link><description>The perfect forum for ASP.NET novices. No question too simple! &lt;A href="http://aspadvice.com/SignUp/list.aspx?l=21&amp;amp;c=17" target=_blank&gt;Email List&lt;/A&gt;</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Re: Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/3543368.aspx</link><pubDate>Wed, 02 Dec 2009 09:38:21 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:3543368</guid><dc:creator>LastPhoenix</dc:creator><author>LastPhoenix</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/3543368.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=3543368</wfw:commentRss><description>&lt;p&gt;Why not use like this to be able pass every listcontrol :&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre name="code" class="c-sharp"&gt;public static void BindToEnum(Type enumType, ListControl lc)
        {
            // get the names from the enumeration
            string[] names = Enum.GetNames(enumType);
            // get the values from the enumeration
            Array values = Enum.GetValues(enumType);
            // turn it into a hash table
            Hashtable ht = new Hashtable();
            for (int i = 0; i &amp;lt; names.Length; i++)
                // note the cast to integer here is important
                // otherwise we&amp;#39;ll just get the enum string back again
                ht.Add(names[i], (int)values.GetValue(i));
            // return the dictionary to be bound to
            lc.DataSource = ht;
            lc.DataTextField = &amp;quot;Key&amp;quot;;
            lc.DataValueField = &amp;quot;Value&amp;quot;;
            lc.DataBind();
        }&lt;/pre&gt;&lt;p&gt;&lt;br /&gt; And use just as simple as :&lt;br /&gt;&lt;/p&gt;&lt;pre name="code" class="c-sharp"&gt;BindToEnum(typeof(NewsType), DropDownList1);
BindToEnum(typeof(NewsType), CheckBoxList1);
BindToEnum(typeof(NewsType), RadoButtonList1);&lt;/pre&gt;&lt;p&gt;&lt;br /&gt; &lt;br /&gt;&lt;/p&gt;</description></item><item><title>Re: Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/2480368.aspx</link><pubDate>Thu, 10 Jul 2008 13:34:48 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2480368</guid><dc:creator>mattaniah</dc:creator><author>mattaniah</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2480368.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=2480368</wfw:commentRss><description>&lt;p&gt;Damn you are good.&amp;nbsp; Thanks Alot.&lt;/p&gt;</description></item><item><title>Re: Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/2395639.aspx</link><pubDate>Mon, 02 Jun 2008 18:13:49 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2395639</guid><dc:creator>Apples</dc:creator><author>Apples</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2395639.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=2395639</wfw:commentRss><description>&lt;p&gt;That worked great, thank you.&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/2395348.aspx</link><pubDate>Mon, 02 Jun 2008 16:04:09 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2395348</guid><dc:creator>gbogea</dc:creator><author>gbogea</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2395348.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=2395348</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;You can create a method to help you convert your enum into a hashtable and then bind it to the ddl:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;pre class="coloredcode"&gt;    &lt;span class="kwd"&gt;protected void&lt;/span&gt; Page_Load(&lt;span class="kwd"&gt;object&lt;/span&gt; sender, EventArgs e)
    {
        Hashtable ht = GetEnumForBind(&lt;span class="kwd"&gt;typeof&lt;/span&gt;(Salutations));
        DropDownList1.DataSource = ht;
        DropDownList1.DataTextField = &lt;span class="st"&gt;&amp;quot;value&amp;quot;&lt;/span&gt;;
        DropDownList1.DataValueField = &lt;span class="st"&gt;&amp;quot;key&amp;quot;&lt;/span&gt;;

        DropDownList1.DataBind();
        
    }

    &lt;span class="kwd"&gt;public&lt;/span&gt; Hashtable GetEnumForBind(Type enumeration)
    {
        &lt;span class="kwd"&gt;string&lt;/span&gt;[] names = Enum.GetNames(enumeration);
        Array values = Enum.GetValues(enumeration);
        Hashtable ht = &lt;span class="kwd"&gt;new&lt;/span&gt; Hashtable();
        &lt;span class="kwd"&gt;for&lt;/span&gt; (&lt;span class="kwd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; names.Length; i++)
        {
            ht.Add(Convert.ToInt32(values.GetValue(i)).ToString(), names[i]);
        }
        &lt;span class="kwd"&gt;return&lt;/span&gt; ht;
    }&lt;/pre&gt;&amp;nbsp;&amp;nbsp;</description></item><item><title>Re: Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/2395328.aspx</link><pubDate>Mon, 02 Jun 2008 15:57:08 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2395328</guid><dc:creator>ecbruck</dc:creator><author>ecbruck</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2395328.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=2395328</wfw:commentRss><description>&lt;p&gt;Here&amp;#39;s an example:&lt;/p&gt;
&lt;p&gt;ASPX&amp;nbsp;&lt;pre class="coloredcode"&gt;&lt;span class="dir"&gt;&amp;lt;%@ page language=&amp;quot;C#&amp;quot; masterpagefile=&amp;quot;~/MasterPages/Default.master&amp;quot; autoeventwireup=&amp;quot;true&amp;quot;
	codefile=&amp;quot;BindToEnum.aspx.cs&amp;quot; inherits=&amp;quot;DropDownList_BindToEnum&amp;quot; title=&amp;quot;DropDownList: Bind To Enum&amp;quot; %&amp;gt;&lt;/span&gt;

&amp;lt;&lt;span class="tag"&gt;asp:content&lt;/span&gt;&lt;span class="attr"&gt; id=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;Content1&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; contentplaceholderid=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;ContentPlaceHolder1&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; runat=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;Server&amp;quot;&lt;/span&gt;&amp;gt;
	&amp;lt;&lt;span class="tag"&gt;asp:dropdownlist&lt;/span&gt;&lt;span class="attr"&gt; id=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;DropDownList1&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; runat=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;server&amp;quot;&lt;/span&gt;&amp;gt;
	&amp;lt;/&lt;span class="tag"&gt;asp:dropdownlist&lt;/span&gt;&amp;gt;
&amp;lt;/&lt;span class="tag"&gt;asp:content&lt;/span&gt;&amp;gt;&lt;/pre&gt;
&lt;p&gt;CODE-BEHIND&amp;nbsp;&lt;pre class="coloredcode"&gt;&lt;span class="kwd"&gt;using&lt;/span&gt; System;
&lt;span class="kwd"&gt;using&lt;/span&gt; System.Web.UI.WebControls;

&lt;span class="kwd"&gt;public&lt;/span&gt; partial &lt;span class="kwd"&gt;class&lt;/span&gt; DropDownList_BindToEnum : System.Web.UI.Page
{
	&lt;span class="kwd"&gt;private enum&lt;/span&gt; Salutations { Mr = 1, Ms = 2, Mrs = 3 };

	&lt;span class="kwd"&gt;protected void&lt;/span&gt; Page_Load(&lt;span class="kwd"&gt;object&lt;/span&gt; sender, EventArgs e)
    {
		&lt;span class="kwd"&gt;if&lt;/span&gt; (!&lt;span class="kwd"&gt;this&lt;/span&gt;.IsPostBack)
		{
			&lt;span class="kwd"&gt;string&lt;/span&gt;[] names = Enum.GetNames(&lt;span class="kwd"&gt;typeof&lt;/span&gt;(Salutations));
			Array values = Enum.GetValues(&lt;span class="kwd"&gt;typeof&lt;/span&gt;(Salutations));

			&lt;span class="kwd"&gt;for&lt;/span&gt; (&lt;span class="kwd"&gt;int&lt;/span&gt; i = 0; i &amp;lt;= names.Length - 1; i++)
			{
				DropDownList1.Items.Add(&lt;span class="kwd"&gt;new&lt;/span&gt; ListItem(names[i], Convert.ToInt32(values.GetValue(i)).ToString()));
			}
		}
    }
}&lt;/pre&gt;</description></item><item><title>Re: Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/2395304.aspx</link><pubDate>Mon, 02 Jun 2008 15:44:52 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2395304</guid><dc:creator>pixelsyndicate</dc:creator><author>pixelsyndicate</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2395304.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=2395304</wfw:commentRss><description>&lt;p&gt;Here&amp;nbsp;are some methods I wrote to bind enum&amp;#39;s to dropdownlists&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;pre class="coloredcode"&gt;        &lt;span class="cmt"&gt;/// &amp;lt;summary&amp;gt;
        /// Pass in a DropDownList and typeof(YourEnum) as parameters to auto-bind a dropdownlist to an enum 
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;ddl&amp;quot;&amp;gt;ddlMyDropDownList&amp;lt;/param&amp;gt;
        /// &amp;lt;param name=&amp;quot;enumType&amp;quot;&amp;gt;typeof(MyEnum)&amp;lt;/param&amp;gt;
        /// &amp;lt;param name=&amp;quot;retainSelected&amp;quot;&amp;gt;true/false indicating if the currently selected item should remain selected&amp;lt;/param&amp;gt;&lt;/span&gt;
        &lt;span class="kwd"&gt;public static void&lt;/span&gt; BindEnum2DropDownList(DropDownList ddl, Type enumType, &lt;span class="kwd"&gt;bool&lt;/span&gt; retainSelected)
        {
            &lt;span class="cmt"&gt;// retain the currently selected item if possible&lt;/span&gt;
            &lt;span class="kwd"&gt;string&lt;/span&gt; currentlySelectedValue = &lt;span class="kwd"&gt;string&lt;/span&gt;.Empty;
            &lt;span class="kwd"&gt;if&lt;/span&gt;(retainSelected)
                currentlySelectedValue = ddl.SelectedValue;

            ddl.DataSource = WilsToolbox.EnumHelper.GetListItemsFromEnum(enumType);
            ddl.DataBind();
            

            &lt;span class="cmt"&gt;// in the event that there was a selected item, keep it.&lt;/span&gt;
            &lt;span class="kwd"&gt;if&lt;/span&gt; (currentlySelectedValue != &lt;span class="kwd"&gt;string&lt;/span&gt;.Empty &amp;amp;&amp;amp; retainSelected == &lt;span class="kwd"&gt;true&lt;/span&gt;)
            {
                ddl.ClearSelection();
                ddl.Items.FindByText(currentlySelectedValue).Selected = &lt;span class="kwd"&gt;true&lt;/span&gt;;
            }
        }

        &lt;span class="kwd"&gt;public static&lt;/span&gt; ListItemCollection GetListItemsFromEnum(Type enumType)
        {
            &lt;span class="cmt"&gt;// container to be returned&lt;/span&gt;
            ListItemCollection items = &lt;span class="kwd"&gt;new&lt;/span&gt; ListItemCollection();
            &lt;span class="cmt"&gt;// break down the enumerator items into key/value pairs&lt;/span&gt;
            &lt;span class="kwd"&gt;string&lt;/span&gt;[] names = Enum.GetNames(enumType);
            Array values = Enum.GetValues(enumType);
            &lt;span class="cmt"&gt;// piece together the key/pairs into the listitem collection&lt;/span&gt;
            &lt;span class="kwd"&gt;for&lt;/span&gt; (&lt;span class="kwd"&gt;int&lt;/span&gt; i = 0; i &amp;lt;= names.Length - 1; i++)
            {
                items.Add(&lt;span class="kwd"&gt;new&lt;/span&gt; ListItem(names[i], values.GetValue(i).ToString()));
            }
            &lt;span class="cmt"&gt;// return it&lt;/span&gt;
            &lt;span class="kwd"&gt;return&lt;/span&gt; items;
        }&lt;/pre&gt;&amp;nbsp;</description></item><item><title>Bind dropdownlist to enum</title><link>http://forums.asp.net/thread/2395257.aspx</link><pubDate>Mon, 02 Jun 2008 15:24:44 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2395257</guid><dc:creator>Apples</dc:creator><author>Apples</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2395257.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=2395257</wfw:commentRss><description>&lt;p&gt;I want to bind the value and the name of the enum to the dropdownlist.&amp;nbsp; I&amp;#39;ve been looking around about how to do this, and found some examples, but it&amp;#39;s not working for me for some reason:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;pre class="coloredcode"&gt;&lt;span class="kwd"&gt;public enum&lt;/span&gt; Salutations
{
    Mr = 1,
    Ms = 2, 
    Mrs = 3
}




&lt;span class="kwd"&gt;string&lt;/span&gt;[] names = Enum.GetNames(&lt;span class="kwd"&gt;typeof&lt;/span&gt;(Salutations));
Array values = Enum.GetValues(&lt;span class="kwd"&gt;typeof&lt;/span&gt;(Salutations));
        
&lt;span class="kwd"&gt;for&lt;/span&gt;(&lt;span class="kwd"&gt;int&lt;/span&gt; i=0; inew ListItem(names[i], values[i].ToString());
     ddlSalutations1.Items.Add(item);
}&lt;/pre&gt;&amp;nbsp;&lt;p&gt;The problem is trying to access the value in values.&amp;nbsp; I can&amp;#39;t do it for an Array.&amp;nbsp; How can I modify this?&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item></channel></rss>