[英]Binding Error Validation In Code and not in XAML
我了解如何在XAML
設置事件時如何綁定和處理驗證錯誤,如下所示,我現在需要做的是添加相同的錯誤處理程序,但完全在代碼中添加XAML
因為我在運行時在代碼中添加了控件。 我進行了搜索,但找不到任何指向正確方向的內容。
<Grid>
<TextBox Validation.Error="TextBox_Error" />
</Grid>
如果您理解正確,這里就是您想要的:
var element = yourRunTimeControl as DependencyObject;
System.Windows.Controls.Validation.AddErrorHandler(element, ErrorHandler)
private void ErrorHandler(object sender, System.Windows.Controls.ValidationErrorEventArgs e)
{
...
}
您可以在此處閱讀有關Validation.Error
附加事件的更多信息。
您還可以為控件設置Binding並為綁定添加ValidationRules
TextBox txtBox = new TextBox();
txtBox.DataContext = // Your data;
Binding binding = new Binding();
binding.Path = // Set path;
binding.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
binding.ValidatesOnDataErrors = true;
binding.NotifyOnValidationError = true;
binding.ValidationRules.Add(// Your ValidationRule class);
txtBox.SetBinding(TextBox.TextProperty, binding);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.