数据绑定月份列表但使用数字而不是名称

时间:2010-02-25 10:35:14

标签: c# asp.net

我有一个像这样的字符串数组:

string[] month = {"Month", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };

我想将其数据绑定到下拉列表。

我希望用户看到这些月份名称,但是当用户选择March(例如)时,我想使用数字3而不是“Mar”。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

最快的方法可能只是制作一个关键值对列表:

        Dictionary<string, int> myList = new Dictionary<string, int>();
        myList.Add("Jan", 1);
        myList.Add("Feb", 2);

        System.Web.UI.WebControls.DropDownList drodown = new System.Web.UI.WebControls.DropDownList();
        drodown.DataSource = myList;
        drodown.DataTextField = "key";
        drodown.DataValueField = "value";
        drodown.DataBind();

        int monthValue = int.Parse(drodown.SelectedValue);

这只是在飞行中编码,所以请原谅任何小错误。但它应该让你很好地了解如何做你想做的事。

答案 1 :(得分:0)

嗯...只是一个想法,并且有效。

int month = DateTime.Parse("01 "+ dropdown.SelectedValue + "2000").Month;