应该没有问题的,检查一下窗体.designer.cs文件里面的事件是否正常
this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged);
如果是下面这样的话,可能就不行了,需要把(this.listBox1_SelectedIndexChanged_1)改成(this.listBox1_SelectedIndexChanged);
this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged_1);
另外,如果listbox的窗体很大的话,也就是说你可能没有选中任何东西,那么std=list1.text可能就是“”,所以最好在前添加一个判断,也就是:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex != -1 && listBox1.SelectedIndex < listBox1.Items.Count)//判断选择了某项
{
std = listBox1.SelectedItem.ToString();
}
else //没选的话,提示选择
{
MessageBox.Show("请选择xxx!", "Tips", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
[
本帖最后由 c1_wangyf 于 2010-11-9 12:59 编辑 ]