2016-08-27 4 views
0

私は自分のデータグリッドビューで助けが必要です すべての列は数量列以外は読み取り専用です。ユーザーは、小計欄に入力任意の量の値をと(価格*数量)の結果を表示するには、自動的にDataGridViewTextBoxColumnにはテキスト変更イベントハンドラがありますか?

Click here to see example

+0

ようこそstackoverflowへ。明確な質問をすると、あなたを助けやすくなります。これまでにやったことを含めて、もしあればエラーを共有することは非常に重要です。この記事をお読みになり、良い答えが得られることを確認してください。 –

+0

小計の列が式で定義されている場合、それについて心配する必要はありません – Plutonix

+0

あなたは__could__を取得しますEditControlShowingイベントのTextBoxを開き、TextChangedイベントハンドラを追加します。しかし、すべてのキーストロークではほとんど意味をなさないでしょうか? DGV.CellEndEditイベントまたはCellValueChangedイベントをよく見てください。 – TaW

答えて

0

多分これは遅れているが、試してみて、あなたのコードにこれを追加することができます。

Private Sub dg1_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles dg1.CellValueChanged 
    Try 
     dg1.CommitEdit(DataGridViewDataErrorContexts.Commit) 
     If e.ColumnIndex = 9 Then 'columindex for your QUANTITY. 9 is just a sample 
      dg1.CommitEdit(DataGridViewDataErrorContexts.Commit) 
      dg1.CurrentRow.Cells("SubTotal").Value = (VAL(dgSalesOrderLine.CurrentRow.Cells("SalesOrderAmount").Value) * VAL(dgSalesOrderLine.CurrentRow.Cells("SalesOrderQuantity").Value)) 
     End If 
    Catch ex As Exception 
    End Try 
End Sub 


Private Sub dg1_CurrentCellDirtyStateChanged(sender As Object, e As EventArgs) Handles dg1.CurrentCellDirtyStateChanged 
    dg1.CommitEdit(DataGridViewDataErrorContexts.Commit) 
End Sub 
関連する問題