Binding.UpdateSourceExceptionFilter Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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.
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
Özellik Değeri
Bağlama altyapısının bağlama kaynak değerini güncelleştirme sırasında karşılaştığı özel durumları işlemek için özel mantık sağlayan bir yöntem.
Örnekler
Aşağıdakinin TextTextBox özelliği, türünde intbir kaynak özelliğe Age3 bağlı verilerdir. Kaynak ExceptionValidationRule ö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).
<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 ayarlama işleminin UpdateSourceExceptionFilter nasıl yapılacağını gösterilmektedir UpdateSourceExceptionFilterCallback.
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.
object ReturnExceptionHandler(object bindingExpression, Exception exception)
{
return "This is from the UpdateSourceExceptionFilterCallBack.";
}
, UpdateSourceExceptionFilterCallback özel durumun kendisini veya bir ValidationErrordeğerini de 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ştirilerek oluşturulan özel durumları denetleyebilen 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 durum içeren bir ValidationError oluşturur ve bunu Validation.Errors ilişkili öğenin koleksiyonuna ekler.Binding