Asp.net 如何使dropdownlist listitems不可见

Asp.net 如何使dropdownlist listitems不可见,asp.net,drop-down-menu,Asp.net,Drop Down Menu,我有两个相关的DropDownList控件。根据父级DropDownList中的选择,我想隐藏子级DropDownList中的某些项目,以防它们与父级DropDownList中的选定项目无关 我尝试了以下几点: foreach(ListItem item in ddlChildren.Items) { item.Visible = /* some logic here */ } 但是,Visible属性在此处似乎不可用 有人能建议我如何实现这一功能吗?对于这种情况,我通常使用Ajax

我有两个相关的
DropDownList
控件。根据父级
DropDownList
中的选择,我想隐藏子级
DropDownList
中的某些项目,以防它们与父级
DropDownList
中的选定项目无关

我尝试了以下几点:

foreach(ListItem item in ddlChildren.Items)
{
     item.Visible = /* some logic here */
}
但是,
Visible
属性在此处似乎不可用


有人能建议我如何实现这一功能吗?

对于这种情况,我通常使用AjaxControlToolkit中的级联下拉扩展程序

在这里查看:

项目主页:


请注意,这种方法不会改变列表项的可见性,而是根据Web服务方法的结果动态填充列表项。

您不能“隐藏”值。您需要重新绑定或重新填充列表


或者,如果您只想删除特定的项目,您可以删除或添加,但这通常比重建列表要复杂得多。

我通过使用要隐藏的项目的Enabled属性并将其设置为false,成功地完成了类似的操作。设置为false时,该项不可见。

我在web应用程序中遇到类似问题。我使用下面的命令,使用要隐藏的项的索引上的enable属性,在下拉列表中隐藏特定项。该项目不会像在windows应用程序上那样变灰。它实际上是隐藏在视线之外的。请注意,我的原始代码是用VB编写的。我在下面转换了一个c版本。Jean Francois正在讨论上述相同的解决方案

this.ddlyordropdown.Items(3).Enabled==false

下面是一个使用特定项的值的解决方案


这个.ddlYourDropDown.Items.FindByValue(“YourItemValue”).Enabled==false是这里的最佳选项