Wyświetlanie zaznaczonego elementu z DataGridView w Label

0

Hej
Mam takie pytanko. Zrobiłem sobie w programie datagridview w którym wyświetla mi się tabelka z bazy oracle. Po kliknięciu w dany element wartości całego wiersza wyświetlają mi się w label ale nie zawsze...raz załapie raz nie i za bardzo nie wiem czemu. Wyświetlam je takim kodem:

public void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
       {

               DataGridViewRow row = this.dataGridView1.Rows[e.RowIndex];

               label1_Miejscowość.Text = row.Cells["Miejscowość"].Value.ToString();
               label2_Imie.Text = row.Cells["Imie"].Value.ToString();
               label3_Nazwisko.Text = row.Cells["Nazwisko"].Value.ToString();
       }

W czym może być problem?

0

Zdarzenie to jest odpalane po kliknięciu w zawartość danej komórki (według dokumentacji), dlatego przypuszczam, że jeśli klikasz w przestrzeń komórki w której nie ma wartości, wówczas zdarzenie się nie odpala.
Wydaje mi się, że lepszym rozwiązaniem dla Twojego problemu powinno być obsłużenie zdarzenia *SelectionChanged *DataGridView

0

Dzięki, poczytam.
Może ktoś jeszcze ma jakiś pomysł?

0

*SelectionChanged *wydaje się najrozsądniejsze jeśli nie ma znaczenia to, w która kolumnę danego wiersza kliknąłeś. jeśli natomiast z jakiegoś powodu chcesz tez rozróżnić którą kolumnę kliknąłeś, możesz poczytać o evencie DataGridView.CellClik. Handler wygląda mniej wiecej tak:

private void dataGridView1_CellClick(object sender,
    DataGridViewCellEventArgs e)

W *EventArgs *masz takie properties jak np RowIndex, *ColumnIndex *

1 użytkowników online, w tym zalogowanych: 0, gości: 1