Binding.UpdateSourceExceptionFilter 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定可用來提供自訂邏輯的處理常式,以處理繫結引擎在更新繫結來源值期間所遇到的例外狀況。 只有您已建立 ExceptionValidationRule 與繫結的關聯時才適用。
public:
property System::Windows::Data::UpdateSourceExceptionFilterCallback ^ UpdateSourceExceptionFilter { System::Windows::Data::UpdateSourceExceptionFilterCallback ^ get(); void set(System::Windows::Data::UpdateSourceExceptionFilterCallback ^ value); };
public System.Windows.Data.UpdateSourceExceptionFilterCallback UpdateSourceExceptionFilter { get; set; }
member this.UpdateSourceExceptionFilter : System.Windows.Data.UpdateSourceExceptionFilterCallback with get, set
Public Property UpdateSourceExceptionFilter As UpdateSourceExceptionFilterCallback
屬性值
提供自訂邏輯以處理繫結引擎在更新繫結來源值期間所遇到之例外狀況的方法。
範例
下列 TextTextBox 的 屬性是系結至類型 int
為 的來源屬性 Age3
。 檢查 ExceptionValidationRule 在更新來源屬性期間擲回的例外狀況 (,例如當使用者輸入無法轉換成整數) 的值時。
<TextBox Name="textBox3" Width="50" FontSize="15"
Grid.Row="4" Grid.Column="1" Margin="2"
Validation.ErrorTemplate="{StaticResource validationTemplate}"
Style="{StaticResource textBoxInError}">
<TextBox.Text>
<Binding Path="Age3" Source="{StaticResource ods}"
UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<ExceptionValidationRule/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
您可以提供自訂邏輯來處理這些例外狀況。 下列範例示範如何使用 UpdateSourceExceptionFilter 屬性來設定 UpdateSourceExceptionFilterCallback 。
BindingExpression myBindingExpression = textBox3.GetBindingExpression(TextBox.TextProperty);
Binding myBinding = myBindingExpression.ParentBinding;
myBinding.UpdateSourceExceptionFilter = new UpdateSourceExceptionFilterCallback(ReturnExceptionHandler);
myBindingExpression.UpdateSource();
以下是 的範例實作 UpdateSourceExceptionFilterCallback 。
object ReturnExceptionHandler(object bindingExpression, Exception exception)
{
return "This is from the UpdateSourceExceptionFilterCallBack.";
}
UpdateSourceExceptionFilterCallback也可以傳回 null
、例外狀況本身或 ValidationError 。 如需詳細資訊,請參閱UpdateSourceExceptionFilterCallback。
如需完整的範例,請參閱 系結驗證範例。
備註
ExceptionValidationRule是內建的驗證規則,會檢查系結來源屬性更新期間所擲回的例外狀況。 如果您已經與 Binding 物件相關聯 ExceptionValidationRule ,您可以使用這個屬性來設定處理常式,以提供自訂邏輯來處理這些例外狀況。 UpdateSourceExceptionFilter如果未在 上 Binding 指定 ,則系結引擎會 ValidationError 建立 ,但例外狀況為 ,並將它新增至 Validation.Errors 繫結項目目的集合。