asp.net下拉列表findbytext

时间:2013-06-25 18:34:19

标签: c# asp.net

我使用以下选项让下拉列表从列表中选择一个项目:

    ddlIndustry.Items.FindByText("Trucking").Selected = true;

这样做还有其他逻辑。

我注意到了:

   ddlIndustry.Items.FindByText("Trucking").Selected = true;

然后在代码中执行以下操作:

   ddlIndustry.Items.FindByText("Cards").Selected = true; 

我收到错误消息,指出无法选择多个项目。

3 个答案:

答案 0 :(得分:8)

这是你想要做的:

ddlIndustry.SelectedValue = ddlIndustry.Items.FindByText("Cards").Value;

问题是将ListItem设为Selected并不能清除其他ListItem的选择。请注意,Items属性为ListItemColletionListBoxCheckListBox也使用该属性,允许多个项目选择(DropDownList不允许那就是你收到错误的原因。)

使用SelectedValue的{​​{1}}属性为您进行多项选择,取消选择以前选择的项目并按值选择新项目。

您可以在此处检查相关问题:https://stackoverflow.com/a/16068632/570191

答案 1 :(得分:1)

尝试使用ClearSelection清除之前的选择:

ddlIndustry.ClearSelection();
if (ddlIndustry.Items.FindByText("Cards") != null)
    ddlIndustry.Items.FindByText("Cards").Selected = true;

答案 2 :(得分:0)

这对我有用,而其他语法则不然。 (VB asp.net)

                Try
                    MyDropdownList.SelectedValue = ValueVariable 

                Catch ex As Exception

                End Try