通常我使用这行代码来禁用一个项目。这很好用:
dropdownlist1.Items.FindByValue("item1").Attributes.Add("disabled", "disabled");
字符串
但是,如果我想删除同一列表中的其他项目,则前一个项目将不再被禁用:
dropdownlist1.Items.Remove(dropdownlist1.Items.FindByText("item2"));
dropdownlist1.Items.FindByValue("item1").Attributes.Add("disabled", "disabled");
dropdownlist1.Items.FindByValue("item1").Attributes.Add("title", "No Access");
型
相比之下,标题/工具提示在应该禁用的行上仍然可以正常工作,所以我不知道为什么该项目不会被禁用。Remove()
函数的位置无关紧要,无论它是在添加“disabled”属性之前还是之后,它都会阻止禁用。
1条答案
按热度按时间zengzsys1#
这是一个奇怪且不一致的问题,但至少我现在已经用
Attributes.CssStyle.Add.("display", "none")
而不是Remove()
修复了它:字符串