当我在gridview中选择一行时,我正在尝试加载mysql数据以进行标签。
这是我的班级,它获取选定的行值并将其绑定到标签。
private void LoadOrders()
{
con.Open();
cmd = new SqlCommand(@"Select quo_product,quo_address
FROM JobQuotations
WHERE quotationId = @id
AND quo_product = @product",con);
//1st row 2nd column
cmd.Parameters.AddWithValue("@id",GridView1.SelectedIndex.ToString());
//1st row 3rd column
cmd.Parameters.AddWithValue("@product",GridView1.SelectedIndex.ToString());
if(rdr.HasRows)
{
while(rdr.Read())
{
lblProductName.Text = rdr["quo_product"].ToString();
lblAddress.Text = rdr["quo_Address"].ToString();
}
}
con.Close();
}
我知道我的if语句中缺少一些代码,因为我不知道如何在其上获取选定的行值。如何在cmd.Parameter中输入什么才能获取selectedRow值?
最佳答案
如果它不起作用,请尝试此操作,让我知道问题,并且看不到我可以更改以使其起作用的方法,我之前没有使用2个不同的单元名称来完成此操作。您能否使用datagridview更新顶部的图像以获取您正在使用的datagridview的列名。
private void dataGrid1_SelectionChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGrid1.SelectedRows)
{
string quo_product = row.Cells[0].Value.ToString();
//string quo_Address = row.Cells[0].Value.ToString();
}
lblProductName.Text = quo_product;
//lblAddress.Text = quo_Address;
}
更新
由于rai nalasa(Question)随后提出的问题,此问题已解决。
关于c# - 将选定的数据网格行加载到标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37177845/