代码改变世界

将枚举绑定在下拉框DropDownList和ListBox中

2009-05-15 09:46  周国选  阅读(2983)  评论(0编辑  收藏

前台页面

 

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default5.aspx.cs" Inherits="Default5" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>将枚举绑定在下拉框DropDownList和ListBox中</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="drpStatus" runat="server">
        </asp:DropDownList>
        <asp:ListBox ID="lbStatus" runat="server"></asp:ListBox>
    </div>
    </form>
</body>
</html>

 

后台代码

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Default5 : System.Web.UI.Page
{
    private void Page_Load(object sender, System.EventArgs e)
    {
        ListType();
    }

    /// <summary>
    /// 绑定下拉框
    /// </summary>
    private void ListType()
    {
        drpStatus.Items.Clear();
        drpStatus.DataSource = ListTypeForEnum();
        drpStatus.DataValueField = "value";
        drpStatus.DataTextField = "text";
        drpStatus.DataBind();

        lbStatus.Items.Clear();
        lbStatus.DataSource = ListTypeForEnum();
        lbStatus.DataValueField = "value";
        lbStatus.DataTextField = "text";
        lbStatus.DataBind();

    }
    /// <summary>
    /// 把枚举转换成数组
    /// </summary>
    /// <returns></returns>
    public static IList ListTypeForEnum()
    {
        ArrayList list = new ArrayList();
        foreach (int i in Enum.GetValues(typeof(EnumActivityType)))
        {
            ListItem listitem = new ListItem(Enum.GetName(typeof(EnumActivityType), i), i.ToString());
            list.Add(listitem);
        }
        return list;
    }
    /// <summary>
    /// 枚举
    /// </summary>
    public enum EnumActivityType
    {
        Task = 1,
        Fax = 2,
        Phone = 3,
        Email = 4,
        Reminder = 5,
        Appointment = 6,
        Expiration = 7,
        Inquiry = 8
    }


}