WPFのTextBoxはIMEの変換中でも、TextBox.TextChangedイベントが発生します。 これはこれで便利なのですが、TextBoxへ入力可能な文字種別を制限したい場合などには苦労します。 TextChangedイベント内では、文字列が確定されているかどうかを判断する適切な方法が見つかりませんでした。 とりあえず、ネットで検索していると、TextCompositionManagerを使うとうまくいくかも的な書き込みを発見したのでいろいろと調査してみました。 対象のイベントは4つ。TextBoxの場合、TextInputイベントは発生することはないらしいので(※)、すべてPreview系で統一です。 (※)http://msdn.microsoft.com/ja-jp/library/system.windows.uielement.textinput(v=VS.90).as