VB.NET DataGridView の所定のカラムだけ、IMEを操作する

DataGridView で、特定のカラムだけ IMEをOff(Disable)にする必要が出てきたのでやり方をメモ。
DataGridView の CellEnter イベントを補足することによって実現する。
フォーカスが当たったセルのカラム名で判断し、該当したら ImeMode を変更するというやり方。


Private Sub SampleDataGridView_CellEnter(sender As Object, e As DataGridViewCellEventArgs) Handles SampleDataGridView.CellEnter
  Dim dgv As DataGridView = CType(sender, DataGridView)
  Dim columnIndex As Integer = e.ColumnIndex
  
  Dim columnName As String = dgv.Columns(columnIndex).Name
  
  '特定のカラムはIMEをDisableにする
  Select Case columnName
    Case column1.Name, column2.Name
      SampleDataGridView.ImeMode = Windows.Forms.ImeMode.Disable
      
    Case Else
      SampleDataGridView.ImeMode = Windows.Forms.ImeMode.On
    
  End Select
  
End Sub



posted by へっぽ at 23:24 | TrackBack(0) | VB.NET | このブログの読者になる | 更新情報をチェックする

この記事へのトラックバック