如果在列表框中没有选择任何项目,我希望我的按钮被禁用。我有按钮Enable设置为false。选择某个项目时,该按钮会启用true,但是,在启用该按钮后,如果没有选择列表项,它将不会禁用。
代码背后:
protected void Button2_Click(object sender, EventArgs e)
{
List<ListItem> itemsRemove = new List<ListItem>();
foreach (ListItem listItem in ListBox1.Items)
{
if (listItem.Selected)
itemsRemove.Add(listItem);
}
foreach (ListItem listItem in itemsRemove)
{
ListBox1.Items.Remove(listItem);
}
}
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
foreach (ListItem item in ListBox1.Items)
{
if (item.Selected)
{
Button2.Enabled = true;
}
}
}
答案 0 :(得分:4)
试试这个:
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Button2.Enabled = false;
foreach (ListItem item in ListBox1.Items)
{
if (item.Selected)
{
Button2.Enabled = true;
}
}
}
但它不是这种功能的最佳解决方案,最好使用一些JavaScript代码来启用/禁用您的按钮。
编辑(最小解决方案):
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Button2.Enabled = ListBox1.Items.Any(x => x.Selected);
}
答案 1 :(得分:0)
您还应该将AutoPostBack
的{{1}}属性设置为ListBox
,并将true
设置为两个按钮,EnableViewState
必须设置为ListBox