DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DataGridViewでIMEが勝手にOFFになるときにつきまして

環境/言語:[VB.net2.0x]
分類:[.NET]

質問をさせていただきます。

vb.net2.0の
DataGridViewにつきまして、
フォームでIMEをローマ字入力hiragana(IME-ON)にして入力してる際、
DataGridViewにbindingしたDataTableをClearし、そのDataTableにRowを追加して、
DataGridViewのセルに文字を入力しようとすると、半角英数字(IME-OFF)入力に
戻ってしまいます。いちいち半角/全角キーを押し直さなくてはなりません。

この勝手にIMEが勝手に無効になるのを防ぐためにはどうすればよいでしょうか。
解決策をお教えください。


(解決策としてIME-ONの時はDataGridViewのimemodeをhiraganaにしようと思いましたが、ImmGetConversionStatusの第二引数intptrで常に0が帰ってきてしまい、こちらはいったん保留している状態です。)
ご質問とは違うかもしれませんが、列によってテキストボックスのImeModeプロパティを変更する方法を以下のページで紹介しています。

DataGridViewでセルの編集に使われているテキストボックスを取得する
http://dobon.net/vb/dotnet/datagridview/editingcontrol.html
例をどうもありがとうございます。
列や行によってIMEモードを固定して解決できる問題なら
十分な解決策になったのですが・・・

フォームのIME入力状態をDataGridViewで使わせるという、
至って普通の、.net1.0では何もいじらずに出来たことだったのですが

どうも.net2.0だと仕様なのかバグなのかわからないIMEの挙動をするときがありますね・・・

DOBON.NET | プログラミング道 | プログラミング掲示板