Binding.UpdateSourceExceptionFilter Özellik

Tanım

Bağlama altyapısının bağlama kaynak değerinin güncelleştirmesi sırasında karşılaştığı özel durumları işlemek için özel mantık sağlamak için kullanabileceğiniz bir işleyici alır veya ayarlar. Bu yalnızca bağlamanızla ilişkilendirdiğiniz durumlarda ExceptionValidationRule geçerlidir.

C#
public System.Windows.Data.UpdateSourceExceptionFilterCallback UpdateSourceExceptionFilter { get; set; }

Özellik Değeri

Bağlama altyapısının bağlama kaynak değerinin güncelleştirmesi sırasında karşılaştığı özel durumları işlemek için özel mantık sağlayan bir yöntem.

Örnekler

Text Aşağıdakinin TextBox özelliği, türünde intbir kaynak özelliğe Age3 veri bağlıdır. ExceptionValidationRule Kaynak özelliğin güncelleştirilmesi sırasında oluşturulan özel durumları denetler (örneğin, kullanıcı tamsayıya dönüştürülemeyen bir değer girdiğinde).

XAML
<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>

Bu özel durumları işlemek için özel mantık sağlayabilirsiniz. Aşağıdaki örnekte özelliğini kullanarak bir UpdateSourceExceptionFilterCallbackayarlama işleminin UpdateSourceExceptionFilter nasıl yapılacağını gösterilmektedir.

C#

BindingExpression myBindingExpression = textBox3.GetBindingExpression(TextBox.TextProperty);
Binding myBinding = myBindingExpression.ParentBinding;
myBinding.UpdateSourceExceptionFilter = new UpdateSourceExceptionFilterCallback(ReturnExceptionHandler);
myBindingExpression.UpdateSource();

Aşağıda örnek bir uygulaması verilmiştir UpdateSourceExceptionFilterCallback.

C#
object ReturnExceptionHandler(object bindingExpression, Exception exception)
{
    return "This is from the UpdateSourceExceptionFilterCallBack.";
}

UpdateSourceExceptionFilterCallback, özel durumun kendisini veya değerini ValidationErrorde döndürebilirnull. Daha fazla bilgi için bkz. UpdateSourceExceptionFilterCallback.

Tam örnek için bkz . Bağlama Doğrulama Örneği.

Açıklamalar

ExceptionValidationRule, bağlama kaynak özelliğinin güncelleştirmesi sırasında oluşturulan özel durumları denetleen yerleşik bir doğrulama kuralıdır. nesnesiyle Binding ilişkilendirdiysenizExceptionValidationRule, bu özel durumları işlemek için özel mantık sağlayacak bir işleyici ayarlamak için bu özelliği kullanabilirsiniz. üzerinde belirtilmezseUpdateSourceExceptionFilter, bağlama altyapısı özel durumu olan bir ValidationError oluşturur ve bunu ilişkili öğenin koleksiyonuna Validation.Errors ekler.Binding

Şunlara uygulanır

Ürün Sürümler
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10