C# 列表项不存在';t删除
我有两个按钮和一个C# 列表项不存在';t删除,c#,asp.net,listbox,C#,Asp.net,Listbox,我有两个按钮和一个列表框。当我单击第1个按钮时,它应该从列表框中删除所选项目,但它没有-列表框保持不变。代码有什么问题 static List<string> Blist = new List<string>(); public int x; protected void Page_Load(object sender, EventArgs e) { Blist = (List<string>)Session["items"]; if (Bl
列表框
。当我单击第1个按钮时,它应该从列表框
中删除所选项目,但它没有-列表框保持不变。代码有什么问题
static List<string> Blist = new List<string>();
public int x;
protected void Page_Load(object sender, EventArgs e)
{
Blist = (List<string>)Session["items"];
if (Blist != null)
{
ListBox1.Items.Clear();
for (int i = 0; i < Blist.Count; i++)
ListBox1.Items.Add(Blist[i]);
}
}
protected void Button1_Click(object sender, EventArgs e)
{
x= ListBox1.SelectedIndex;
if (x >= 0)
{
ListBox1.Items.RemoveAt(x);
string m = Blist[x];
Blist.Remove(m);
Session["items"] = null;
Session["items"] = Blist;
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Session["items"] = null;
}
static List Blist=new List();
公共int x;
受保护的无效页面加载(对象发送方、事件参数e)
{
Blist=(列表)会话[“项”];
如果(Blist!=null)
{
ListBox1.Items.Clear();
for(int i=0;i=0)
{
列表框1.Items.RemoveAt(x);
字符串m=Blist[x];
Blist.Remove(m);
会话[“项”]=null;
会话[“项目”]=Blist;
}
}
受保护的无效按钮2\u单击(对象发送者,事件参数e)
{
会话[“项”]=null;
}
当页面发回时(单击按钮时),页面加载处理程序将再次启动。当它这样做时,它会重新填充您的列表。为了防止这种情况,您需要检查它是一个页面回发,还是初始加载。您可以通过检查Page.IsPostBack
是否为真来执行此操作。如果为真,则表示页面正在被发回(通过单击按钮或其他方式)。如果它不是真的,则表示它是页面的初始加载
protected void Page_Load(object sender, EventArgs e)
{
Blist = (List<string>)Session["items"];
if (!Page.IsPostBack)
{
if (Blist != null)
{
ListBox1.Items.Clear();
for (int i = 0; i < Blist.Count; i++)
ListBox1.Items.Add(Blist[i]);
}
}
}
受保护的无效页面加载(对象发送方,事件参数e)
{
Blist=(列表)会话[“项”];
如果(!Page.IsPostBack)
{
如果(Blist!=null)
{
ListBox1.Items.Clear();
for(int i=0;i
当页面发回时(单击按钮时),页面加载处理程序将再次启动。当它这样做时,它会重新填充您的列表。为了防止这种情况,您需要检查它是一个页面回发,还是初始加载。您可以通过检查Page.IsPostBack
是否为真来执行此操作。如果为真,则表示页面正在被发回(通过单击按钮或其他方式)。如果它不是真的,则表示它是页面的初始加载
protected void Page_Load(object sender, EventArgs e)
{
Blist = (List<string>)Session["items"];
if (!Page.IsPostBack)
{
if (Blist != null)
{
ListBox1.Items.Clear();
for (int i = 0; i < Blist.Count; i++)
ListBox1.Items.Add(Blist[i]);
}
}
}
受保护的无效页面加载(对象发送方,事件参数e)
{
Blist=(列表)会话[“项”];
如果(!Page.IsPostBack)
{
如果(Blist!=null)
{
ListBox1.Items.Clear();
for(int i=0;i
@Charles出于完全相同的原因,另一个提出相同建议的答案被否决,并在该答案的评论中进行了解释。考虑到史蒂夫也在读这篇文章,我认为没有必要在这里重新发布它们。哈哈。。。我写下这个答案,我得到-1,你写它+3+非常感谢你,我很乐意帮助我(:@AseelNasser你给我正确的答案,然后把它拿走,交给回答不正确的人?哈哈…@Charles因为同样的原因,同样建议的另一个答案被否决了,并且在答案的评论中有解释。考虑到Steve正在读这篇文章,我不认为有必要在这里重新发布它们还有。哈哈…我写了这个答案,我得到了-1,你写了它和+3。非常感谢你,我回来帮我很多(:@aselnasser你给我正确的答案,然后把它拿走,交给回答不正确的人?哈哈。。。。