读书人

一个从列表框中删除选中项的有关问题

发布时间: 2013-08-27 10:20:47 作者: rapoo

一个从列表框中删除选中项的问题,求解决
我想实现这个程序一个从列表框中删除选中项的有关问题,求解决
点删除后出现这个一个从列表框中删除选中项的有关问题,求解决
求大神帮我看看代码

public partial class Form1 : Form
{


public Form1()
{
InitializeComponent();
}
static List<user> user1 = new List<user>();
private void btn_add_Click(object sender, EventArgs e)//添加按钮
{

listBox1.Items.Add(txb_user.Text);
user u = new user();
u.userName = txb_user.Text;
u.userpassword = txb_password.Text;
if (rdb_admin.Checked)
{
u.select = rdb_admin.Text;
}
if (rdb_read.Checked)
{
u.select = rdb_read.Text;
}
if (rdb_readwrite.Checked)
{
u.select = rdb_readwrite.Text;

}
if (rdb_write.Checked)
{
u.select = rdb_write.Text;
}


user1.Add(u);
//清屏
txb_user.Clear();
txb_password.Clear();
text_rpassword.Clear();
if (rdb_admin.Checked)
rdb_admin.Checked = false;
if (rdb_read.Checked)
rdb_read.Checked = false;
if (rdb_readwrite.Checked)
rdb_readwrite.Checked = false;
if (rdb_write.Checked)
rdb_write.Checked = false;

}

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)//当选择改变时
{
int n = listBox1.SelectedIndex;//获取列表框的当前集合


txb_user.Text = listBox1.Items[n].ToString();
for (int i = 0; i < user1.Count; i++)
{
if (txb_user.Text == user1[i].userName)
{
txb_password.Text = user1[i].userpassword;
text_rpassword.Text = user1[i].userpassword;


string quanxian = user1[i].select;
switch (quanxian)
{
case "管理员":
rdb_admin.Checked = true;
break;
case "只读用户":
rdb_read.Checked = true;
break;
case "只写用户":
rdb_write.Checked = true;
break;
case "读写用户":
rdb_readwrite.Checked = true;
break;
}


}

}
}

private void Form1_Load(object sender, EventArgs e)
{

}



private void btn_alter_Click(object sender, EventArgs e)//修改还没做
{

int n = listBox1.SelectedIndex;//获取列表框的当前集合
txb_user.Text = listBox1.Items[n].ToString();


}
class user//用于保存集合中TextBox的内容
{
public string userName;
public string userpassword;
public string select;
}

private void btn_clear1_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
}

private void btn_clear2_Click(object sender, EventArgs e)//清屏
{
txb_user.Clear();
txb_password.Clear();
text_rpassword.Clear();
if (rdb_admin.Checked)
rdb_admin.Checked = false;
if (rdb_read.Checked)


rdb_read.Checked = false;
if (rdb_readwrite.Checked)
rdb_readwrite.Checked = false;
if (rdb_write.Checked)
rdb_write.Checked = false;
}

private void btn_delete_Click(object sender, EventArgs e)//删除按钮
{

listBox1.SelectedItems.Clear();
txb_user.Clear();
txb_password.Clear();
text_rpassword.Clear();
if (rdb_admin.Checked)
rdb_admin.Checked = false;
if (rdb_read.Checked)
rdb_read.Checked = false;
if (rdb_readwrite.Checked)
rdb_readwrite.Checked = false;
if (rdb_write.Checked)
rdb_write.Checked = false;
}
}


有人帮我解决么!对你们来说很简单的 ListBox
------解决方案--------------------


n = listBox1.SelectedIndex
如果没选中任何项的话,n就会是-1,下边的listBox1.Items[n]就会异常,对n的值要先做判断处理

读书人网 >asp.net

热点推荐