public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
List<Class1> list = new List<Class1>();
private void button1_Click(object sender, EventArgs e)
{ #region list.Add()
list.Add(new Class1() { UserID = 1, Name = "A" });
list.Add(new Class1() { UserID = 2, Name = "B" });
list.Add(new Class1() { UserID = 3, Name = "C" });
#endregion
listBox1.DisplayMember = "Name";
listBox1.ValueMember = "UserID";
listBox1.DataSource = list;
#region MyRegion
//listBox1.Items.Add(new Class1() { UserID = 1, Name = "A" });
//listBox1.Items.Add(new Class1() { UserID = 2, Name = "B" });
//listBox1.Items.Add(new Class1() { UserID = 3, Name = "C" });
#endregion
}
private void listBox1_SelectedValueChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex!=-1)//为什么删除这个判断后会报错呢?
{
textBox1.Text = listBox1.SelectedValue.ToString();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.Text=listBox1.SelectedValue.ToString();//这种却不会报错。
}
}
{
public Form1()
{
InitializeComponent();
}
List<Class1> list = new List<Class1>();
private void button1_Click(object sender, EventArgs e)
{ #region list.Add()
list.Add(new Class1() { UserID = 1, Name = "A" });
list.Add(new Class1() { UserID = 2, Name = "B" });
list.Add(new Class1() { UserID = 3, Name = "C" });
#endregion
listBox1.DisplayMember = "Name";
listBox1.ValueMember = "UserID";
listBox1.DataSource = list;
#region MyRegion
//listBox1.Items.Add(new Class1() { UserID = 1, Name = "A" });
//listBox1.Items.Add(new Class1() { UserID = 2, Name = "B" });
//listBox1.Items.Add(new Class1() { UserID = 3, Name = "C" });
#endregion
}
private void listBox1_SelectedValueChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex!=-1)//为什么删除这个判断后会报错呢?
{
textBox1.Text = listBox1.SelectedValue.ToString();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.Text=listBox1.SelectedValue.ToString();//这种却不会报错。
}
}
解决方案 »
- 初学者求助!下面方法的源代码定义在哪里啊?
- (非常急!)不是有效的项目文件,项目文件缺少“VisualStudioProject”节
- 如何根据查询出来的数据构建树形,而且是无限制级的?
- 有谁知道函数RaiseKeyEvent怎么用,msdn上的解释我没看懂
- 线程的挂起和启动
- 邮件发送器的问题!
- DataGridView问题请教!!!???如何编程实现DataGridView的指定Cell的Click事件!
- treeview问题: web上如何才能正确显示数据库中数据呢?
- 怎样把TextBox里的数字文本转为int ?
- 如果你会,很简单!
- 程序异常终止后如何关闭监听的websocket端口?
- AJAX跨域请求数据,不知道是正常不正常也不知道哪里问题了
{
public int UserID { get; set; }
public string Name { get; set; } }
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
List<Class1> list = new List<Class1>();
private void button1_Click(object sender, EventArgs e)
{ #region list.Add()
list.Add(new Class1() { UserID = 1, Name = "A" });
list.Add(new Class1() { UserID = 2, Name = "B" });
list.Add(new Class1() { UserID = 3, Name = "C" });
#endregion
listBox1.DisplayMember = "Name";
listBox1.ValueMember = "UserID";
listBox1.DataSource = list;
}
private void listBox1_SelectedValueChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex!=-1)//为什么删除这个判断后会报错呢?
{
textBox1.Text = listBox1.SelectedValue.ToString();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.Text=listBox1.SelectedValue.ToString();//这种却不会报错。
}
}
class Class1
{
public int UserID { get; set; }
public string Name { get; set; } }
{
if (listBox1.SelectedIndex!=-1)//为什么删除这个判断后会报错呢?
{
textBox1.Text = listBox1.SelectedValue.ToString();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.Text=listBox1.SelectedValue.ToString();//这种却不会报错。
}
}
你的代码,括号怎么是包起来的额?
你说的把if去掉,就和第二个是一样的啊。那怎么说第一个报错,第二个不报错呢
private void listBox1_SelectedValueChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex!=-1)//为什么删除这个判断后会报错呢?
{
textBox1.Text = listBox1.SelectedValue.ToString();
}
}缺个括号
textBox1.Text = listBox1.SelectedValue.ToString();这一步如果listBox1.SelectedValue为空就会出错
if (listBox1.SelectedIndex!=-1)//为什么删除这个判断后会报错呢?
{
textBox1.Text = listBox1.SelectedValue.ToString();
}
//可以改成:
textBox1.Text = listBox1.SelectedValue??listBox1.SelectedValue.ToString();