我有一个Asp: Dropdownlist
。我想显示基于分配值的选定列表项。
<asp:DropDownList ID="uxRegionDropDownList" runat="server" style="height:25px; width: 34%; text-align: center;" required="False">
<asp:ListItem Value="-1">FEMA Region</asp:ListItem>
<asp:ListItem Value="1">I</asp:ListItem>
<asp:ListItem Value="2">II</asp:ListItem>
<asp:ListItem Value="3">III</asp:ListItem>
<asp:ListItem Value="4">IV</asp:ListItem>
<asp:ListItem Value="5">V</asp:ListItem>
<asp:ListItem Value="6">VI</asp:ListItem>
<asp:ListItem Value="7">VII</asp:ListItem>
<asp:ListItem Value="8">VIII</asp:ListItem>
<asp:ListItem Value="9">IX</asp:ListItem>
<asp:ListItem Value="10">X</asp:ListItem>
<asp:ListItem Value="HQ">HQ</asp:ListItem>
<asp:ListItem Value="Unknown">Unknown</asp:ListItem>
</asp:DropDownList>
例如,如果我有一个变量string region = "9"
并分配了uxRegionDropDownList = region
,我希望它会将IX
填充为所选值。但是,事实并非如此。它仅显示“ FEMA地区”。如何解决此问题并在框中显示正确的ListItem
?
C#
protected void uxStatesDropdownList_SelectedIndexChanged(object sender, EventArgs e)
{
UpdateCountiesList(uxStatesDropdownList.SelectedValue);
UpdateRegion(uxStatesDropdownList.SelectedValue);
}
private void UpdateRegion(string stateName)
{
string region = _dtMgr.GetFEMARegionByState(stateName);
//uxRegionDropDownList.Items.Clear();
uxRegionDropDownList.SelectedItem.Value = region;
}
注意:在上述情况下,我将状态更改为“ AR”,这将返回一个区域=“ 9”作为字符串。
答案 0 :(得分:1)
您可能想改用uxRegionDropDownList.SelectedValue = region;
。
当前代码将更改当前所选项目的值,而您似乎想基于某个值更改当前所选项目。 SelectedValue
属性将获取当前所选项目的值,或选择具有提供的值的项目。