我遇到了由 XML 文件填充的 ASP.NET DropDownList 的问题:

rblState.DataSource = dsState;
rblState.DataValueField = "abbreviation";
rblState.DataTextField = "name";
rblState.DataBind();

这工作正常并显示所有正确的数据但是,当我尝试在单击按钮后从列表中检索所选值时会出现问题:
string state = rblState.SelectedItem.Text;
Console.WriteLine(state);

这始终只输出列表中的第一个值。

有谁知道这个问题的解决方案?

最佳答案

您可能正在重新绑定(bind) PostBack 上的 DataSource。相反,请执行以下操作:

//only bind on the first request
if (!Page.IsPostBack)
{
    rblState.DataSource = dsState;
    rblState.DataValueField = "abbreviation";
    rblState.DataTextField = "name";
    rblState.DataBind();

}

关于c# - 为什么我的 DropDownList Selected Item 每次只显示列表中的第一项?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8343125/

10-10 07:53