服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - ASP.NET教程 - 对ListBox的添加移除操作实例分享

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

2019-11-01 13:17asp.net教程网 ASP.NET教程

ListBox的添加移除操作在开发过程中经常会遇到过,接下来本文也实现一个,思路很清晰,感兴趣的朋友可以参考下,希望可以帮助到你

前台代码: 

复制代码代码如下:


<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); 

延伸 · 阅读

精彩推荐