2016-04-04 11 views
0

bir öğe eklediğinizde denilen Selectedındexchanged: "Ek bilgiler:: hayır satır konumunda bulunmaktadır söylemekliste kutusu: Olay ben sadece onun tek kontrol olarak bir liste olan bir Win arkasında bu kodu var

private void Form1_Load(object sender, EventArgs e) 
{ 
listBox1.DataSource = dtv; 
listBox1.DisplayMember = "Name"; 
listBox1.ValueMember = "IDName"; 
} 
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
DataSet dss = UseDatabase.FillDataSet("Select * From Table Where IDName=" + listBox1.SelectedValue); 
string st = dss.Tables[0].Rows[0][0].ToString(); 
MessageBox.Show(st); 
} 

Çalıştır 0." Hata ayıklama Bir öğe eklerken Event SelectedIndexChanged çağrılır. Kullanıcı neden öğe seçmedi, bu olay olarak adlandırılır Ve nasıl düzeltilir?

+0

Kodunuzun bu olay işleyicisine ulaştığı sırada SelectedIndex değeri nedir? Bir hata ayıklama sorunu ortaya çıkarabilir – Steve

+0

Merhaba, listBox1.ValueMember = "IDName"; Form1_Load üzerinde – user1568204

+0

Aldığınız hata iletisinden, kullandığınız sorgunun satır döndürmediğine karar verebilirsiniz. Hata ayıklayıcısına, sorgu dizgininizin nasıl göründüğünü kontrol edebilirsiniz. – Gnqz

cevap

1

Bunu düzeltmenin tek yolunun, olay işleyici yönteminde başka bir şey yapmadan önce SelectedIndex! = -1 olduğunu kontrol ederek bildiğim kadarıyla.