как получить определенные данные, отображаемые в текстовых полях, используя представление таблицы данных - PullRequest
0 голосов
/ 02 мая 2011

Я создал форму, в которой есть 4 ярлыка: идентификатор учителя, имя учителя и отдел и описание вместе с соответствующими текстовыми полями.Я вставил значения в базу данных с помощью кнопки ДОБАВИТЬ (используя запрос вставки). Я использовал представление таблицы данных для отображения данных.

Теперь проблема заключается в том, что я хочу, чтобы при iIselect одной строке представления данных отображалсяи = его данные в соответствующих текстовых полях.Я пробовал следующий код, но не смог написать его правильно.

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{

SqlConnection con = new SqlConnection("Data Source=SW-PC-20;Integrated security =SSPI;Initial catalog=institute");

con.Open();
SqlCommand com = new SqlCommand("select * from teacher2", con);
SqlDataReader dr = com.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(dr);
dr.Close();
dataGridView1.DataSource = dt;
     if (dr.HasRows)
                dr.Read();
         txtteacherid.Text = dr[0].ToString();
         txtteachername.Text = dr[1].ToString();
         txtdepartment.Text = dr[2].ToString();
         txtdescription.Text = dr[3].ToString();
}

1 Ответ

0 голосов
/ 02 мая 2011
   private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {

     if (e.RowIndex > -1)
                {
                    txtteacherid.Text = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
                    txtteachername.Text = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
                    txtdepartment.Text = dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();
                    txtdescription.Text = dataGridView1.Rows[e.RowIndex].Cells[3].Value.ToString();
                }

    }
...