基于其他控件动态更改控件属性

时间:2013-02-19 21:08:39

标签: wpf xaml wpf-controls

在WPF中,我有一行一行两列。

<Grid>
 <Textbox Grid.Column=0>
  <Validation.ErrorTemplate>
   <DockPanel>
    <Image DockPanel.Dock="Right" Margin="20,0,0,0"/>
   </DockPanel>
  </Validation.ErrorTemplate>
 </Textbox>
<Button Grid.Column=1>
</Button>

我希望图像(错误图标)保留在按钮的右侧,按钮的文本可以有不同的大小。有没有办法根据按钮的宽度动态设置图像的边距?现在它只是固定在文本框右侧的20个像素。

2 个答案:

答案 0 :(得分:0)

验证错误模板显示在特殊的装饰层中。 如果您需要相对于装饰元素定位元素,请在XAML中使用AdornedElementPlaceholder类。

答案 1 :(得分:0)

我认为不可能完成你想要的东西,看你不能从数据模板中引用一个元素,除非引用的元素是在那个模板或样式中定义的。您可以通过其他方式see here完成此操作。