У меня есть две таблицы dataGridView. Один с поставщиками, второй с продуктами. Я хочу, чтобы они работали так: когда я нажимаю на строку в DataGridView поставщиков, в Products dataGridView будет отображаться только продукция выбранного поставщика. функция Это я написал для этой цели:C# dataGridView не показывает информацию, которую я хочу показать
static public void SuppliersProducts(DataGridView _productslist)
{
try
{
connection.Open();
SqlCommand commandShow = new SqlCommand("SELECT a.Name FROM Products a INNER JOIN SuppliersProducts b ON a.Id = b.ProductId WHERE b.SupplierId = @SupplierId", connection);
DataGridViewRow dr1 = _productslist.SelectedRows[0];
commandShow.Parameters.AddWithValue("@SupplierId", dr1.Cells[0].Value);
commandShow.ExecuteNonQuery();
}
catch (SqlException exception)
{
MessageBox.Show(exception.ToString());
}
finally
{
connection.Close();
}
}
Im используя его в dataGridView1_CellMouseClick:
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
SuppliersProducts(ProductsList);
}
Где ProductsList мой DataGridView для таблицы Products. Проблема в том, что он не бросает никаких ошибок, но когда я нажимаю на определенного поставщика в моей первой таблице данныхGridView, ничего не происходит со вторым. Что я делаю не так?
говорится, что t hat it can not run foreach для dt, потому что DataTable не содержит общедоступного определения для 'GetEnumerator' – Martin
@Martin Извините, foreach (строка DataRow в dt.Rows) ..... – AliTheOne
Спасибо! Это сработало! – Martin