我想为附加的Property添加每个Codebehind的DataBinding,并希望在TextBox中显示Canvas.Left
属性。如何添加此属性?
答案 0 :(得分:18)
从你的问题中有点不清楚,但我认为你问的是如何绑定到附加属性Canvas.Left
并在TextBox中显示它。我假设你想要它而不是TextBox。
<Canvas>
<TextBox x:Name="textBox" Text="{Binding ElementName=button, Path=(Canvas.Left)}" />
<Button x:Name="button" Content="Press me" />
</Canvas>
请注意附加属性周围的括号。
编辑: 要在代码中执行等效操作,请使用以下命令:
Binding binding = new Binding();
binding.Source = button;
binding.Path = new PropertyPath(Canvas.LeftProperty);
textBox.SetBinding(TextBlock.TextProperty, binding);
答案 1 :(得分:-3)
是的,画布没有左侧属性。它是Canvas内容中FrameworkItem的附加属性。
<Canvas Width="100" Height="100">
<TextBox Name="top" Canvas.Left="12"></TextBox>
</Canvas>