Validation.Errors 附加屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得繫結項目上所有使用中 ValidationError 物件的集合。
see GetErrors
see GetErrors
see GetErrors
備註
應用程式無法修改此集合的內容。 如需如何使用這個附加屬性的範例,請參閱範例一節。
WPF 資料系結模型可讓您與物件產生 Binding 關聯 ValidationRules 。 在呼叫轉換器之前,在系結目標對系結來源值傳輸期間發生驗證。 下列描述驗證程式:
當值從目標屬性傳送至來源屬性時,資料系結引擎會先移除任何可能已新增至 System.Windows.Controls.Validation.Errors 繫結項目目附加屬性的任何 ValidationError 專案。 然後它會檢查是否有針對該 Binding 定義的任何自訂 ValidationRule ,在此情況下,它會在每個 ValidationRule 上呼叫 Validate 方法,直到其中一個發生錯誤,或直到所有方法都通過為止。
一旦有未傳遞的自訂規則,系結引擎就會 ValidationError 建立 物件,並將它新增至 System.Windows.Controls.Validation.Errors 繫結項目目的集合。 當 System.Windows.Controls.Validation.Errors 不是空白時, System.Windows.Controls.Validation.HasError 專案的附加屬性會設定為
true
。 此外,如果 Binding 的 NotifyOnValidationError 屬性設定為true
,則繫結引擎會針對元素引發 System.Windows.Controls.Validation.Error 附加事件。如果所有規則都通過,則系結引擎會呼叫轉換器,如果有的話。
如果轉換程式通過,系結引擎會呼叫來源屬性的 setter。
如果系結有 ExceptionValidationRule 相關聯的 ,而且步驟 4 期間擲回例外狀況,系結引擎會檢查是否有 UpdateSourceExceptionFilter 。 您可以選擇使用 UpdateSourceExceptionFilter 回呼來提供自訂處理常式來處理例外狀況。 UpdateSourceExceptionFilter如果未在 上 Binding 指定 ,系結引擎會 ValidationError 建立 ,但例外狀況為 ,並將它新增至 System.Windows.Controls.Validation.Errors 繫結項目目的集合。
另請注意,有效的值傳輸方向 (目標對來源或來源對目標) 清除 Validation 。 Errors附加屬性。
如需這個屬性在案例中 MultiBinding 行為的相關資訊,請參閱 ValidationError 。
如需詳細資訊,請參閱 資料系結概觀中的。
XAML 文字使用方式
請參閱<備註>。 Errors集合本身不是使用者可設定的,但您可以在 XAML 的控制項範本定義中使用它。
相依性屬性資訊
識別碼欄位 | ErrorsProperty |
設定為 的中繼資料屬性 true |
IsNotDataBindable |