検証ルールを使用してカスタムメッセージを表示し、INotifyDataErrorをビジネスルールに使用しています。
私のコードのこの部分:
public class ResponseValidation : ValidationRule
{
public override ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo)
{
int? response;
bool noIllegalChars = TryParseStruct<int>(value.ToString(), out response);
if (!noIllegalChars)
{
return new ValidationResult(false, "Input is not in a correct format.");
}
else
{
value = null;
return new ValidationResult(true, null);
}
}
...
}
検証はNullableデータ型に対するものです。つまり、値はnullまたは整数にすることができますが、「5b」のような誤った入力はできません。
問題は、このエラー(noIllegalChars = true)が発生する場合、プロパティに値nullを設定するにはどうすればよいですか?
編集:私がこれを行っている理由は、ユーザーがテキストボックスを空のままにしたとき(値は "")、技術的にはnull値であるプロパティに対して、プロパティに""を設定しようとしているためです。