2016-08-11 5 views

答えて

0

「検証」と呼ばれることに興味があります。自動的にトリガーすべきテキストなどへの整数のバインディングに関連するデフォルトの検証があると私は信じています。

デフォルトでは、赤い四角形のテキストボックスが強調表示され、エラーメッセージが表示されます。また、ソースプロパティを決定的に更新しません。

カスタムデータ検証メッセージ(およびその他の基準)を追加できます。これはあなたの結合にValidatesOnDataErrors="True"を追加してください。

<TextBox Text="{Binding MyInteger, ValidatesOnDataErrors=True}" Width="100" Margin="20"/> 

そして、あなたのデータコンテキストを作るには、IDataErrorInfoを継承し、同様に実施することは、次のとおりです。あなたの出力ウィンドウで

public string Error 
    { 
     get 
     { 
      return string.Empty; 
     } 
    } 

    public string this[string columnName] 
    { 
     get 
     { 
      if (columnName == "MyInteger") 
      { 
       if (MyInteger < 0) 
       { 
        return "Must be an integer greater than 0!"; 
       } 
      } 
      return ""; 
     } 
    } 
関連する問題