ここにシナリオがあります。私はダブルプロパティにバインドされているUI上のテキストボックスを持っています。文字列に「#」と入力した場合、WPFの検証ではアプリケーションでは不十分です。カスタムメッセージを表示し、コードからいくつかのコントロールを無効にする必要があります。 (無効にするこれらのコントロールはxamlの一部ではありません)。今のところ、これを行うために考えられる唯一の方法は、テキストボックスを文字列プロパティにバインドし、TryParseメソッドを使用することです。しかし、これは大きな不便です。プロパティが文字列型に変更されることなく、無効な文字が入力されたという通知を受け取る方法はありますか?無効な文字入力のカスタム処理
1
A
答えて
0
よく私は私のviewmodelで "文字列"ソリューションを使用します。 IDataErrorInfoとバインディングで最も効果的です。
しかし、私はまた、私のTextboxeのInputMaskbehaviorを使用することもあります。ユーザは入力マスク用に定義された文字を入力することができます。
0
MVVMパターンを使用している場合は、ViewModelの文字列プロパティがTextboxに入力されているはずです。あなたのモデルにダブルが必要な場合でも、あなたの視点に文字列があります。次に、stringプロパティで必要な検証を行うことができます。エラーがここに存在見ているときのコントロールを無効にすることについては
public string TextProperty
{
get
{
return _textProperty;
}
set
{
if (_textProperty != value)
{
_doubleProperty = this.TransformAndValidateString(value);
_textProperty = value;
}
}
}
:ような何か
関連する問題
- 1. 無効な入力を処理する方法は?
- 2. Watson会話 - 無効な入力を処理する
- 3. 挿入UTF-8 JSON:「失敗:エラー処理文書#1:文字列エスケープコードに無効な文字 『x』は」
- 4. 入力ストリームに無効な文字があります
- 5. html入力テキスト:完全な大文字を無効にする
- 6. 無効入力無効入力
- 7. 整数(文字列)の入力構文が無効です
- 8. Rackミドルウェアを介したユーザ入力の無効なバイトシーケンスの処理方法は?
- 9. エラーシャイニーアプリケーションの展開:処理されない例外:無効な制御文字
- 10. クライアントが無効なJSONを入力しました:字句エラー:jsonテキストの無効な文字列
- 11. SDL C++マウス入力処理トグル効果
- 12. のstd ::無効な入力
- 13. Asciiの入力TCPストリームの解析、バックスペース文字の処理
- 14. Angular.js - 入力から無効な文字をフィルタリングするためのコントローラ機能は、有効な文字が
- 15. 無効な文字
- 16. Cでの文字列入力の処理
- 17. 文字列のKeyError未処理入力の書式設定
- 18. ループ入力中に無効な入力
- 19. MYSQL:無効なJSONテキスト: "無効なエスケープ文字(文字列内)"
- 20. Androidキーボードとテキスト入力が無効[絵文字のキーボードのみ]
- 21. 無効な文字(漢字)
- 22. 無効な文字のチェック文字列
- 23. Azureテーブルストレージ無効な入力
- 24. デコードbase64:無効な入力
- 25. Cで無効な入力
- 26. 処理中に一度に1文字ずつ入力する
- 27. html5入力の検証のためのRegexの無効なエスケープ文字
- 28. 入力スタイリング、無効なブロックが表示されない理由
- 29. Ajax処理で「無効なJSONプリミティブ:undefiend」
- 30. セグメンテーションフォールトにつながる空の文字列入力を処理する
誤った値が入力されていることをコードに見つける方法はありませんか? IDataErrorInfoによって生成された例外をリッスンするような何か? P.P.質問があまりにも基本的な場合は申し訳ありません。私は初心者です。 – Tulip
IDataErrorInfoは例外を発生させません。検証が失敗した場合、エラーメッセージとともに文字列を返すメソッドを提供します。なぜこのアプローチがあなたのために働かないのですか?答えがあなたに役立つなら、upvoteを忘れないでください。 –