0
我有一個按鈕限定在textblock的Validation.HasError屬性上。文本塊具有驗證規則,用於檢查用戶輸入的值。綁定的目的是如果用戶輸入了錯誤的數據,該按鈕應該被禁用。綁定發生在驗證之前
問題是ValidationRule在綁定後執行。因此,當用戶輸入錯誤的值時,綁定將檢查文本塊的HasError屬性,該屬性爲FALSE,因此該按鈕爲Enabled。然後執行驗證規則。它會導致texblock無效並且按鈕被啓用的情況發生逆轉。
如何指定首先執行哪個(綁定和驗證)?
這裏的XAML:
<MultiBinding Converter="{StaticResource ButtonVisibilityConverter}" UpdateSourceTrigger="PropertyChanged" Mode="OneWay" >
<Binding ElementName="integerInput" Path="HasValidationError"/>
<Binding ElementName="doubleInput" Path="HasValidationError"/>
</MultiBinding>
</Button.IsEnabled>
我敢肯定它是不是這樣的。 我正在談論的textblock控件是一個自定義微調控件(帶有兩個+/-按鈕的文本框)。微調器的內容綁定到視圖模型中的一個屬性。每次我們點擊+或 - 按鈕,一個命令被執行,並增加或減少文本框中的值。