刚看完教程,之前很少用到ListBox这个控件,就是在WinForm编程中我也基本上没有用过,都是用DropDownList来代替了,其实这个控件功能比较强大,至少我是这么认为。如果再配合上AJAX的技术,做成联动一样的菜单,用处就更大了!
    在做到删除选定的项目,并且全部删除的时候,出现了个问题,每次都会剩几条,不知道是我算法有问题还是怎么,希望能有人帮我指点指点。谢谢了!我把代码和源文件帖出来。
   天轰穿的教程做的真的很不错,按照自己的理解又把注释更加详细化了,做为一个菜鸟,注释是很重要的东西,把自己的思路归纳总结,是个好事情!
using System;
ListBox的简单应用 _简单
using System.Data;
ListBox的简单应用 _简单
using System.Configuration;
ListBox的简单应用 _简单
using System.Web;
ListBox的简单应用 _简单
using System.Web.Security;
ListBox的简单应用 _简单
using System.Web.UI;
ListBox的简单应用 _简单
using System.Web.UI.WebControls;
ListBox的简单应用 _简单
using System.Web.UI.WebControls.WebParts;
ListBox的简单应用 _简单
using System.Web.UI.HtmlControls;
ListBox的简单应用 _简单
ListBox的简单应用 _简单
public partial class _Default : System.Web.UI.Page 
ListBox的简单应用 _休闲_11
{
ListBox的简单应用 _ListBox_14    
protected void Page_Load(object sender, EventArgs e)
ListBox的简单应用 _简单_15    
{
ListBox的简单应用 _ListBox_14       
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
ListBox的简单应用 _ListBox_21    
{//将选中的项目放入Laber中,如果选择的项为Mgod,则跳转到我的博客园的地址。
ListBox的简单应用 _ListBox_14
        Label1.Text = ListBox1.SelectedValue.ToString();
ListBox的简单应用 _ListBox_14        
if (ListBox1.SelectedValue == "Mgod")
ListBox的简单应用 _休闲_26        
{
ListBox的简单应用 _ListBox_14            Response.Redirect(
"[url]http://mgod.cnblogs.com[/url]");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void TextBox1_TextChanged(object sender, EventArgs e)
ListBox的简单应用 _简单_33    
{
ListBox的简单应用 _ListBox_14        ListBox2.Items.Add(TextBox1.Text);
ListBox的简单应用 _ListBox_14        Button1.Enabled 
= true;
ListBox的简单应用 _ListBox_14        Button2.Enabled
=true;
ListBox的简单应用 _ListBox_14
ListBox的简单应用 _ListBox_14
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button1_Click(object sender, EventArgs e)
ListBox的简单应用 _ListBox_43    
{//点清除,先判断里面是否有值,如果有就清除,如果没有就提示
ListBox的简单应用 _ListBox_14
        if (ListBox2.Items.Count > 0)
ListBox的简单应用 _简单_47        
{
ListBox的简单应用 _ListBox_14            ListBox2.Items.Remove(ListBox2.SelectedItem);
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
else
ListBox的简单应用 _应用_53        
{
ListBox的简单应用 _ListBox_14            
//Button1.Enabled = false; //做了屏蔽,按常理说,如果已经没有任何值的话,按钮应该是不可见的或者是不可选的
ListBox的简单应用 _ListBox_14            
//Button2.Enabled = false;
ListBox的简单应用 _ListBox_14
            Response.Write("<script>alert('哥们,你已经删干净了!');</script>");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button2_Click(object sender, EventArgs e)
ListBox的简单应用 _应用_62    
{//点清空,先判断里面是否有值,如果有就清空,如果没有就提示
ListBox的简单应用 _ListBox_14
        if (ListBox2.Items.Count > 0)
ListBox的简单应用 _简单_66        
{
ListBox的简单应用 _ListBox_14            ListBox2.Items.Clear();
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
else
ListBox的简单应用 _ListBox_72        
{
ListBox的简单应用 _ListBox_14            
//Button1.Enabled = false;  //做了屏蔽,按常理说,如果已经没有任何值的话,按钮应该是不可见的或者是不可选的
ListBox的简单应用 _ListBox_14            
//Button2.Enabled = false;
ListBox的简单应用 _ListBox_14
            Response.Write("<script>alert('哥们,你已经清空了!');</script>");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button3_Click(object sender, EventArgs e)
ListBox的简单应用 _简单_81    
{//循环所有的LISTBOX项,将选中的删除
ListBox的简单应用 _ListBox_14
        
ListBox的简单应用 _ListBox_14        
for (int i=1; i <= ListBox3.Items.Count; i++)
ListBox的简单应用 _休闲_86        
{
ListBox的简单应用 _ListBox_14            ListBox3.Items.Remove(ListBox3.SelectedItem);           
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
//不知道为什么不能全部删除,是我的算法不对吗?请高人指点!
ListBox的简单应用 _ListBox_14

ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void ListBox4_SelectedIndexChanged(object sender, EventArgs e)
ListBox的简单应用 _休闲_95    
{//联动菜单
ListBox的简单应用 _ListBox_14
        switch (ListBox4.SelectedValue)//判断选中的值
ListBox的简单应用 _应用_99
        
ListBox的简单应用 _ListBox_14            
case "赤色火焰的BLOG":
ListBox的简单应用 _ListBox_14                ListBox5.Items.Clear();
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"ASP.NET 2.0");
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"ASP.NET AJAX");
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"C#.NET");
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"业界信息");
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"个人随笔");
ListBox的简单应用 _ListBox_14                
break;
ListBox的简单应用 _ListBox_14            
case "个人资料":
ListBox的简单应用 _ListBox_14                ListBox5.Items.Clear();
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"出生日期");
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"性格爱好");
ListBox的简单应用 _ListBox_14                ListBox5.Items.Add(
"喜欢的女生类型");
ListBox的简单应用 _ListBox_14                
break;
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14
ListBox的简单应用 _ListBox_14
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button4_Click(object sender, EventArgs e)
ListBox的简单应用 _简单_121    
{//向上下移动一条
ListBox的简单应用 _ListBox_14        
//这种临时存储的方法,跟冒泡排序法有很多类似,只是少了很多循环。如果多一个移动到首位的功能的话,还需要加For循环,重新整理一下思路
ListBox的简单应用 _ListBox_14

ListBox的简单应用 _ListBox_14        
if (((Button)sender).CommandName == "up" && ListBox6.SelectedIndex > 0 || ((Button)sender).CommandName == "down" && ListBox6.SelectedIndex < ListBox6.Items.Count - 1 && ListBox6.SelectedIndex >= 0)
ListBox的简单应用 _简单_127        
//判断传来的命令是UP,并且所选条目必须大于0,如果是DOWN,则所选条目必须小于最大项
ListBox的简单应用 _ListBox_14
            int Index;//为了减少代码,这里做了一个变量判断
ListBox的简单应用 _ListBox_14
            if (((Button)sender).CommandName == "up")
ListBox的简单应用 _应用_132            
{
ListBox的简单应用 _ListBox_14                Index 
= -1;
ListBox的简单应用 _休闲_19            }

ListBox的简单应用 _ListBox_14            
else
ListBox的简单应用 _职场_138            
{
ListBox的简单应用 _ListBox_14                Index 
= 1;
ListBox的简单应用 _休闲_19            }

ListBox的简单应用 _ListBox_14            ListItem lt 
= new ListItem(ListBox6.SelectedItem.Text, ListBox6.SelectedValue);//把选中的条目放入lt中,用来做临时保存
ListBox的简单应用 _ListBox_14
            ListBox6.Items[ListBox6.SelectedIndex].Text = ListBox6.Items[ListBox6.SelectedIndex + Index].Text;//把所选条目的上一条或者下一条的TEXT赋值给选中的条目
ListBox的简单应用 _ListBox_14
            ListBox6.Items[ListBox6.SelectedIndex].Value = ListBox6.Items[ListBox6.SelectedIndex + Index].Value;//把所选条目的上一条或者下一条的Value赋值给选中的条目
ListBox的简单应用 _ListBox_14
            ListBox6.Items[ListBox6.SelectedIndex + Index].Text = lt.Text;//把临时存储的选中的项目的内容赋值给选中条目的上一条或者下一条
ListBox的简单应用 _ListBox_14
            ListBox6.Items[ListBox6.SelectedIndex + Index].Value = lt.Value;//把临时存储的选中的项目的内容赋值给选中条目的上一条或者下一条
ListBox的简单应用 _ListBox_14
            ListBox6.SelectedIndex = ListBox6.SelectedIndex + Index;//设置选中的位置
ListBox的简单应用 _ListBox_14

ListBox的简单应用 _ListBox_14            ((Button)sender).Focus();
//设置焦点,否则每次都显示的是页头
ListBox的简单应用 _休闲_19
        }

ListBox的简单应用 _ListBox_14
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button6_Click(object sender, EventArgs e)
ListBox的简单应用 _简单_155    
{//
ListBox的简单应用 _ListBox_14
        if (ListBox6.SelectedIndex >= 0)
ListBox的简单应用 _休闲_159        
{
ListBox的简单应用 _ListBox_14            ListBox6.SelectedIndex 
= 0;
ListBox的简单应用 _ListBox_14            
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
else
ListBox的简单应用 _职场_166        
{
ListBox的简单应用 _ListBox_14            Response.Write(
"<script>alert('请选择后再进行操作');</script>");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        ((Button)sender).Focus();
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button7_Click(object sender, EventArgs e)
ListBox的简单应用 _ListBox_174    
{//向上
ListBox的简单应用 _ListBox_14
        if (ListBox6.SelectedIndex >= 0)
ListBox的简单应用 _休闲_178        
{
ListBox的简单应用 _ListBox_14            ListBox6.SelectedIndex 
= ListBox6.SelectedIndex - 1;
ListBox的简单应用 _ListBox_14            
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
else
ListBox的简单应用 _休闲_185        
{
ListBox的简单应用 _ListBox_14            Response.Write(
"<script>alert('请选择后再进行操作');</script>");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        ((Button)sender).Focus();
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button8_Click(object sender, EventArgs e)
ListBox的简单应用 _ListBox_193    
{//向下
ListBox的简单应用 _ListBox_14
        if (ListBox6.SelectedIndex >= 0)
ListBox的简单应用 _ListBox_197        
{
ListBox的简单应用 _ListBox_14            ListBox6.SelectedIndex 
= ListBox6.SelectedIndex + 1;
ListBox的简单应用 _ListBox_14            
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
else
ListBox的简单应用 _职场_204        
{
ListBox的简单应用 _ListBox_14            Response.Write(
"<script>alert('请选择后再进行操作');</script>");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        ((Button)sender).Focus();
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_14    
protected void Button9_Click(object sender, EventArgs e)
ListBox的简单应用 _职场_212    
{//
ListBox的简单应用 _ListBox_14
        if (ListBox6.SelectedIndex >= 0)
ListBox的简单应用 _职场_216        
{
ListBox的简单应用 _ListBox_14            ListBox6.SelectedIndex 
= ListBox6.Items.Count - 1;
ListBox的简单应用 _ListBox_14           
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        
else
ListBox的简单应用 _ListBox_223        
{
ListBox的简单应用 _ListBox_14            Response.Write(
"<script>alert('请选择后再进行操作');</script>");
ListBox的简单应用 _休闲_19        }

ListBox的简单应用 _ListBox_14        ((Button)sender).Focus();
ListBox的简单应用 _休闲_19    }

ListBox的简单应用 _ListBox_230}

ListBox的简单应用 _简单



点此下载代码