我如何在page_load中填充DropDownList

时间:2013-02-12 08:57:18

标签: c# asp.net xml browser html-select

我有一个DropDownList,我想查看浏览器使用的语言,并相应地设置下拉列表中的值。

 protected void Page_Load(object sender, EventArgs e)
 {
     string language = Request.UserLanguages[0].ToString().Substring(0, 2);

     drpAnrede.DataSource = Server.MapPath("~/App_Data/" + language + ".xml");
 }

更新

我有解决这个问题的方法......

ASPX:

 <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="drpAnrede" runat="server" DataTextField="display" DataValueField="id">
        </asp:DropDownList>
        <asp:XmlDataSource ID="xmldata" runat="server"></asp:XmlDataSource>
    </div>
    </form>

C#:

  protected void Page_Load(object sender, EventArgs e)
        {
            string language = Request.UserLanguages[0].ToString().Substring(0, 2);

            //drpAnrede.DataSource = Server.MapPath("~/App_Data/" + language + ".xml");
            xmldata.DataFile = Server.MapPath("~/App_Data/" + language + ".xml");
            drpAnrede.DataSourceID = xmldata.ID;
        }

2 个答案:

答案 0 :(得分:1)

假设XML正常,则需要调用

drpAnrede.DataBind();

应用数据源后。

答案 1 :(得分:1)

设置数据源后,必须在下拉列表中调用DataBind(),不是吗?

如:

Databinding DropDown Control in .Net