2016-06-11 71 views
-1

我必須form1,form1和form2。從其他形式的C中的按鈕更新datagridview#

在form1我有一個datagridview從我的數據庫加載數據,兩個按鈕,一個用於過濾器,另一個用於向datagridview添加一行。

在form2我有一些組合框,文本框,單選按鈕和四個按鈕,一個用於添加數據,一個用於刪除選定的行(當我在datagridview中雙擊clic行時,form2將使用該信息加載行),一個取消(關閉表單),最後一個是用修改後的信息更新選定的行。

但我的問題是,我被困在那裏,我不知道如何更新同一行。我可以添加一個新的或刪除一個。我正在使用實體框架開發C#。

有人可以幫助我如何從另一種形式更新選定的行?

我想修改我用的代碼時,我加倍集團公司在DataGridView加載在窗口2中的數據:

Inspeccion inspeccio = new Inspeccion(); 
inspeccio.ID =Int32.Parse(txtNumTransaccion.Text); 
inspeccio.Vehiculo = Int32.Parse(cbxIdVehiculo.Text); 
inspeccio.Cliente= Int32.Parse(cbxIdCliente.Text); 
inspeccio.Ralladuras = ralladuras().ToString(); 
inspeccio.Cantidad_Combustible = cbxCombustible.Text.ToString(); 
inspeccio.Repuesta = repuesta().ToString(); 
inspeccio.Gato = gato().ToString(); 
inspeccio.Cristal = cristal().ToString(); 
inspeccio.Fecha_Inspeccion = DateTime.Parse(fecha.Text); 
inspeccio.Empleado_Inspeccion = Int32.Parse(cbxIdEmpleado.Text); 
inspeccio.Estado = cbxEstVehiculo.Text.ToString(); 
MessageBox.Show("Se ha actualizado con exito."); 
+0

到目前爲止你有什麼? –

+0

我嘗試修改我使用的代碼時,我double clic datagridview加載form2中的數據,我張貼我的嘗試。 –

回答

0

使用一些靜態變量來存儲,當你去窗口2行的信息。在返回時,使用這些靜態變量來更新同一行。 例子:

public static int rowId; 
public static bool changed = false; 
private void rowClicked(object sender, EventArgs e) 
{ 
//get row id. say you got row id = 1 
Form1.rowId = 1; 
Form2 frm = new Form2(); 
frm.ShowDialog(); 
if(Form1.changed) 
updateRowinGridView(rowId); 
} 

在Form2的按鈕,使用下面的代碼示例:

private void updateButton(object sender,EventArgs e) 
{ 
//Update Record// 
Form1.changed = true; 
Close(); 
} 

希望這會幫助你。

0

您可以在項目周圍實現一個DataSet,當您更新它時,所有綁定組件都會刷新。