以下の機能を持ったエディターコンポーネントを作っています
- シンタックスハイライト
- 矩形選択
- ルーラーと行番号の表示
- 折り畳み
日本語の入力はITextStoreACP2を実装することで可能になったのですが、IMEをOFFにしている状態で文字を入力することができません。キーボードを押すとKeyDownイベントが飛んでくるのでキーコードを文字列変換するクラスでも作ろうと思ったのですが、非常に数が多いのでやりたくありませんし、様々なキー配列があることを考えるとこれではまずいような気がします。MSDNでWM_CHARやUIElement.TextInputに代わるイベントを探すとCoreWindow.CharacterReceivedというイベントが見つかりました。これで解決するのかと思っていたのですが、このイベントで送られてくるデーターはCharacterReceivedEventArgsクラスのインスタンスで、このクラスには入力された文字を格納するプロパティはありませんでした。その代わりにKeyCodeプロパティがあったのですが、これは仮想キーコードなので求めているものとは違うように思います。WM_CHARに相当するイベントがあったら教えてほしいです