根据Fco Navarro的回答,除了使用e.Control并不总是可行,因为e传递给EditingControlShowing事件ByVal意味着对控件的任何更改(例如,更改.Text属性)都不会反映在DataGridView中。如果您需要对事件处理程序中的实际TextBox控件执行任何操作,则可以使用DataGridView1.EditingControl代替e.Control。
Private WithEvents txtNumeric As New DataGridViewTextBoxEditingControl
Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
txtNumeric = CType(DataGridView1.EditingControl, DataGridViewTextBoxEditingControl)
End Sub
Private Sub txtNumeric_KeyPress(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles txtNumeric.KeyPress
txtNumeric.Text = txtNumeric.Text.ToUpper()
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18567 次 |
| 最近记录: |