代码改变世界

WP7备注(34)(UpdateSourceTrigger|ValidatesOnExceptions|NotifyOnValidationError)

2011-05-03 15:44  血糯米Otomii  阅读(506)  评论(0编辑  收藏  举报

UpdateSourceTrigger 枚举 描述绑定源更新的执行时间。

Default

绑定目标属性的默认 UpdateSourceTrigger 值。 多数依赖项属性的默认值为 PropertyChanged,而Text属性的默认值为 LostFocus。

确定依赖项属性的默认UpdateSourceTrigger值的编程方法是使用GetMetadata来获取属性的属性元数据,然后检查DefaultUpdateSourceTrigger属性的值。

PropertyChanged

当绑定目标属性更改时,立即更新绑定源。

LostFocus

当绑定目标元素失去焦点时,更新绑定源。

Explicit

仅在调用UpdateSource方法时更新绑定源。

UpdateSource调用格式:

TextBox txtbox = sender as TextBox;
BindingExpression bindingExpression = txtbox.GetBindingExpression(TextBox.TextProperty);
bindingExpression.UpdateSource();

-------------------------------------------------------------------------------------------

ValidatesOnExceptions=True
NotifyOnValidationError=True

通过赋值时候的错误,进行错误事件触发

BindingValidationError += OnBindingValidationError;

void OnBindingValidationError(object sender, ValidationErrorEventArgs args)
{
TextBox txtbox = args.OriginalSource as TextBox;
txtbox.Foreground = errorBrush;
}