0

我有一个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;
        }
4

2 回答 2

1

假设 XML 是好的,你需要调用

drpAnrede.DataBind();

应用数据源后。

于 2013-02-12T09:02:01.360 回答
1

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

如:

.Net 中的数据绑定下拉控件

于 2013-02-12T09:02:18.230 回答