2012-04-20 12 views
0

キープレスの検証には、次のWPFコードがあります。押されたキーに基づいて、ユーザーがキーを入力するか、単にキープレスイベントを停止して無効なキーの入力を停止します。キープレスのバリデーション

<TextBox PreviewKeyDown="PreviewKeyDown" /> 
private void PortPreviewKeyDown(object sender, KeyEventArgs e) 
{ 
    bool allowedKeys; 
    allowedKeys = // logic for validation 

    e.Handled = allowedKeys; 
} 

私の質問があり、これは私が依存関係プロパティを使用して検証を呼び出すことができます知っている..私は無効な文字を入力するようにユーザーを制限したい。.. WPFでの検証を行うための適切なアプローチ

ですエラーや成功を表示するssのメッセージが表示されますが、私はそれを遠くに行きたくないので、ユーザーが無効な文字を入力しないようにしたいだけです。

答えて

1

私には有効なアプローチのようですが、文字が無効であるときにユーザーに知らせるメッセージを表示しようとします。そうでなければ、何かが壊れていると思うかもしれません。

TextBoxをサブクラス化し、文字が許可されているプロパティを提供することによってロジックを汎用化することもお勧めします。一部のライブラリには、WPFツールキットのMaskedTextBoxのようなコントロールが既に用意されており、フォーマットの強調表示も可能です。