欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

对ListBox的添加移除操作实例分享

程序员文章站 2024-03-02 13:56:58
前台代码: 复制代码 代码如下:
前台代码:
复制代码 代码如下:

<div>
<asp:listbox id="listbox1" runat="server" height="123px" width="113px" selectionmode="multiple">
<asp:listitem>tom</asp:listitem>
<asp:listitem>jion</asp:listitem>
<asp:listitem>j</asp:listitem>
<asp:listitem>l</asp:listitem>
<asp:listitem>k</asp:listitem>
</asp:listbox>
 <asp:button id="btnadd" runat="server" onclick="btnadd_click" text="添加" />
 
<asp:button id="btnremove" runat="server" text="移除" onclick="btnremove_click" />
 <asp:listbox id="listbox2" runat="server" height="123px" selectionmode="multiple" width="113px"></asp:listbox>
</div>

后台代码:
复制代码 代码如下:

protected void btnadd_click(object sender, eventargs e)
{
#region listbox添加记录的一种错误理解
//选择多条记录的时候,会有一条没有被添加,这是因为当一条记录被移除后,原来的第二条记录的index为0
//for (int i = 0; i < listbox1.items.count; i++)
//{
// if (listbox1.items[i].selected == true)
// {
// listbox2.items.add(listbox1.selectedvalue);
// listbox1.items.remove(listbox1.selectedvalue);
// }
//}
#endregion
#region listbox利用index索引号进行添加的简单写法
//while (0 <= listbox1.selectedindex)
//{
// listbox2.items.add(listbox1.selecteditem);
// listbox1.items.remove(listbox1.selecteditem);
//}
#endregion
#region listbox的另一种成功添加方法
list<listitem> list = new list<listitem>();
for (int i = listbox1.items.count - 1; i >= 0; i--)
{
if (listbox1.items[i].selected == true)
{
list.add(listbox1.items[i]);
listbox1.items.remove(listbox1.items[i]);
}
}
for (int i = 0; i <=list.count - 1; i++)
{
listbox2.items.add(list[i]);
}
#endregion
}
protected void btnremove_click(object sender, eventargs e)
{
while (0 <= listbox2.selectedindex)
{
listbox1.items.add(listbox2.selecteditem);
listbox2.items.remove(listbox2.selecteditem);
}
}