Изменить данные по щелчку строки сетки - PullRequest
0 голосов
/ 16 декабря 2011

У меня есть две таблицы БД Table1 и Table2

Я отображаю данные Table1, используя gridview. Я хочу показать данные table2 в другом gridview, когда пользователь щелкает строку gridview1, т.е. я хочу изменить данные в gridview2, когда пользователь нажимает строку gridview1 Обе таблицы связаны с использованием PersonID.

Я использую формы Windows, а не ASP.NET.

Ответы [ 2 ]

0 голосов
/ 16 декабря 2011

Вы также можете вызвать Подробную запись из события DataGrid "dataGridView1_SelectionChanged" из First Datagrid, например,

private void dataGridView1_SelectionChanged(object sender, EventArgs e)
    {
        int PersonID=Convert.ToInt32(dataGridView1.CurrentRow.Cells["PersonID"].ToString());
        //Pass PersonID to Parameter and Get detail list

    }
0 голосов
/ 16 декабря 2011

Вы можете обработать событие RowEvent (или что-то подобное).Таким образом, вы можете получить значение PersonID (если оно ограничено DataGridView1) и использовать это значение для получения результата из другой таблицы.

private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e)
{
 //Assume that the first column represents PersonID
 var firstCellValue = dataGridView1.Rows[e.RowIndex].Cells[0].Value; 
 if (firstCellValue != null)
   {
      string sql="select * from Table2 where PersonID=@PersonID";
      ....
      cmd.Parameters.Add("@PersonID",SqlDbType.VarChar,20).Value=firstCellValue;
      ....
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...