在阅读了几篇展示
用法的文章和示例之后AdornedElementPlaceholder
我仍然很困惑,它合并到xaml验证的确切功能是什么?
如果您使用Validations,您需要向用户显示哪里(以及什么)没有验证,这就是AdornedElementPlaceholder
发挥作用的地方。它是一个占位符,与您要验证的元素大小完全相同。
假设您正在验证TextBox
上的用户输入,并希望在验证失败时在TextBox
周围显示一个红色框。为TextBox
定义一个ValidationRule和一个验证模板。如果ValidationRule失败,那么Validation.ErrorTemplate
将显示在TextBox
上。在模板内部,AdornedElementPlaceholder
告诉框架在UI上放置模板的位置。在本例中,模板可能如下所示:
<ControlTemplate>
<Border BorderBrush="Red" BorderThickness="1">
<AdornedElementPlaceholder />
</Border>
</ControlTemplate>
你应该读一读这篇文章
我认为AdornedElementPlaceholder用于显示"验证指示符元素"相对于被验证的控件的位置。例如,如果你有一个文本框,当验证失败时,一个红色的x出现在框的右边,我相信(虽然不是100%),AdornedElementPlaceholder负责该定位。
表示在ControlTemplate中使用的元素,用于指定控件中的其他元素相对放置装饰性控件往ControlTemplate中加故事板动画。
来源:http://msdn.microsoft.com/en-us/library/system.windows.controls.adornedelementplaceholder (v = vs.110) . aspx