So versuche ich einen Code zu erstellen, wo ich in der Lage wäre, nach dem Klick F1 in einer neuen Form eine datagridview
abhängig von der textbox
anzuzeigen. Dann möchte ich in diese Reihe doppelklicken und im Haupt datagridview
anzeigen, was ich in das neue Formular datagridview
auswählte. Dies ist der Code, den ich bekam:Doppelklicken Sie in DataGridView Zeile und Spalten in einem anderen DataGridView in C#
private void dataGridView1_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
{
DataGridViewRow dr = dataGridView1.SelectedRows[0];
this.Hide();
frmPrincipal frm = new frmPrincipal();
try
{
con = new SqlConnection(cs.DBConnP);
con.Open();
cmd = new SqlCommand(@"SELECT RTRIM(CL.Cargs) AS 'Cargs', RTRIM(S.Abvs) AS 'Abvs', RTRIM(CL.Linha) AS 'Linha', RTRIM(CL.Qty) AS 'Quantity'
FROM CargsCab CC (NOLOCK)
INNER JOIN CargsLin CL (NOLOCK) ON CC.Cargs = CL.Cargs
INNER JOIN Stock S (NOLOCK) ON CL.Code = S.Code
INNER JOIN Marks M (NOLOCK) ON S.Marks = M.Marks
WHERE CC.Date >= GETDATE() - 120 AND CL.State NOT IN ('F', 'A') AND S.TypeEmb = 'P'
AND CC.Type = 'OCS' AND CL.Cargs LIKE '%" + dr.Cells[0].Value.ToString() + "%' ORDER BY CL.Cargs, S.Marks DESC, S.Abvs", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds, "CargCab");
da.Fill(ds, "CargLin");
da.Fill(ds, "Stock");
da.Fill(ds, "Mark");
frm.dataGridView1.DataSource = ds.Tables["CargCab"].DefaultView;
frm.dataGridView1.DataSource = ds.Tables["CargLin"].DefaultView;
frm.dataGridView1.DataSource = ds.Tables["Stock"].DefaultView;
frm.dataGridView1.DataSource = ds.Tables["Mark"].DefaultView;
con.Close();
}
catch (Exception ex)
{
MessageBox.Show("Error\nDetalhes: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
Wie könnte ich es lösen?
Was ist mit dem Datagridview-Zeile doppelklicken Sie? – RekcsGaming
Datagridview nicht RowDoubleClick Ereignis, so dass Sie Celldoubleclick private void DataGridView1_CellDoubleClick (object sender, DataGridViewCellEventArgs e) { var ddd = dataGridView1.Rows [e.RowIndex] verwenden können; } –
DataGridViewCellEventArgs enthält RowIndex. Wenn Ihr dataGridView über eine Datenquelle verfügt, können Sie leicht auf das Objekt klicken. –