我想为附加属性添加每个Codebehind的DataBinding,并希望在TextBox中显示 Canvas.Left 属性。如何添加此属性?

有帮助吗?

解决方案

你的问题有点不清楚,但我想你会问如何绑定附加属性 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);

其他提示

是的,画布没有左侧属性。它是Canvas内容中FrameworkItem的附加属性。

<Canvas Width="100" Height="100">
   <TextBox Name="top" Canvas.Left="12"></TextBox>
</Canvas>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top