2016-03-10 118 views
0

我正在使用一個WinForms DataGridView,它將數據綁定到Datatable。我有一個可編輯的列,它是一個TextBox列。我委託一個事件到DataGridView單元格編輯後的Winforms DataGridView仍然具有原始值

private void dgvProductStocks_CellEndEdit(object sender, DataGridViewCellEventArgs e) 
    { 
     try { 
      var minUnitsOnHand = int.Parse(dgvProductStocks.Rows[e.RowIndex].Cells[5].Value.ToString()); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show("Error: " + ex.Message); 
     } 
    } 

但在CellEndEdit單元格值的CellEndEdit事件始終是原始值,而不是後,我已編輯的列的值。

+0

你嘗試'CellValidating'事件?該事件的EventArgs具有新值的屬性 – ASh

+0

我想直到觸發Update事件纔會提交該值。或者,也可能是在更新值之前單元格處於編輯模式,您是否嘗試過使用CellValueChanged事件? – Kif

+0

我試過CellValidating和CellValueChanged。沒有運氣。 –

回答

0

好,我找到了解決方案,我需要使用EditedFormattedValue

var editiedValue = dgvProductStocks.Rows[e.RowIndex].Cells[e.ColumnIndex].EditedFormattedValue; 
相關問題