我确信这已经完成但似乎无法在任何地方找到解决方案,或者在这么晚的时候弄明白。
我有两个DropDownLists:
ddConvertFrom
ddConvertTo
OnItemSelectedIndexChange
,我想从其他DropDownList中删除/隐藏所选值。
到目前为止,我已经尝试过这个:
protected void ddConvertTo_SelectedIndexChanged(object sender, EventArgs e)
{
foreach (ListItem li in ddConvertTo.Items)
{
if (ddConvertFrom.SelectedItem.Text == li.Text)
{
ddConvertTo.Items.Remove(ddConvertTo.Items.FindByValue(ddConvertFrom.SelectedItem.Text));
}
}
}
A)为什么以上不起作用?
B)上面有更有效的方法吗?
答案 0 :(得分:2)
好吧,确保autopostbacks为真,然后检查一下。
protected void ddConvertTo_SelectedIndexChanged(object sender, EventArgs e)
{
foreach (ListItem li in ddConvertTo.Items)
{
if (ddConvertFrom.SelectedItem.Text == li.Text)
{
ddConvertTo.Items.Remove(ddConvertTo.Items.FindByText(ddConvertFrom.SelectedItem.Text));
break;
}
}
}
答案 1 :(得分:1)
您应该在绑定之前从集合中删除该项目,而不是在之后尝试将其删除。