DataGridView mousedoubleclick

0

Witam,

chciałbym zrobić coś takiego, że po kliknięciu w rekord w datagridview zostaną wyciągniete dane z bazy danych i przepisane do labeli. stworzyłem taki kod ale coś nie chce działać ;/ nie bardzo wiem jak określić te zaznaczenie aby porównywał z rekoredem z bazy;/;/

problem jest chyba z tym:

WHERE id= " + dgvvvt.SelectedRows.ToString()+ "";


private void dgvvvt_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            gb_wyszuk.Visible = false;
            gb_zarz.Visible = false;

            dgvvvt.Visible = false;
            gb_info.Visible = true;
            pb_dalej.Visible = true;


            SqlCommand pobierz = new SqlCommand();
            pobierz.Connection = new SqlConnection(ConfigurationSettings.AppSettings["polaczbaza"]);
            pobierz.CommandText = "SELECT * FROM c_timetable WHERE id= " + dgvvvt.SelectedRows.ToString()+ "";


            pobierz.Connection.Open();
            SqlDataReader odczyt = pobierz.ExecuteReader();
            odczyt.Read();
        }

chciałbym aby zaznaczony był podczas przeglądania cały wiersz ale aby po kliknięciu miał on wartość która jest wyświetlana w kolumnie ID w bazie znajduję się identyczna również pod id.

może jakiś pomysł ?

z góry dzięki.

0

ok mam :)

gdyby ktoś kiedyś potrzebował:

int ile = dgvvvt.SelectedRows.Count;
            if (ile > 0)
            {
                string numery = "";
                for (int i = 0; i < ile; i++)
                    numery += dgvvvt.SelectedRows[i].Cells[0].Value.ToString() + ",";
                numery = numery.TrimEnd(',');
                SqlCommand pobierz = new SqlCommand();
                pobierz.Connection = new SqlConnection(ConfigurationSettings.AppSettings["polaczbaza"]);
                pobierz.CommandText = "SELECT * FROM c_timetable WHERE id IN( " + numery + ")";
                


                pobierz.Connection.Open();
                SqlDataReader odczyt = pobierz.ExecuteReader();
                odczyt.Read();




                l_i1.Text = odczyt.GetString(3);
                l_i2.Text = odczyt.GetString(4);
                l_i3.Text = odczyt.GetInt32(1).ToString();
                l_i4.Text = odczyt.GetInt32(2).ToString();



                pobierz.Connection.Close();



                // TODO: This line of code loads data into the 'raportDS.c_raport' table. You can move, or remove it, as needed.
                this.c_raportTableAdapter.Fill(this.raportDS.c_raport);
                // TODO: This line of code loads data into the 'timetableDS.c_timetable' table. You can move, or remove it, as needed.
                this.c_timetableTableAdapter.Fill(this.timetableDS.c_timetable);
                // TODO: This line of code loads data into the 'employeeDS.c_employee' table. You can move, or remove it, as needed.
                this.c_employeeTableAdapter.Fill(this.employeeDS.c_employee);
                // TODO: This line of code loads data into the 'customersDS.c_customers' table. You can move, or remove it, as needed.
                this.c_customersTableAdapter.Fill(this.customersDS.c_customers);
                // TODO: This line of code loads data into the 'vvt.viewtimetable' table. You can move, or remove it, as needed.
                this.viewtimetableTableAdapter.Fill(this.vvt.viewtimetable);


                
            }
            else
                MessageBox.Show("Zaznacz przynajmniej jedną pozycję", "Błąd danych");
            
  

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