首页 > 解决方案 > 指定元素已经是 2 个标签的另一个元素的逻辑子元素

问题描述

我是 WPF 新手,我尝试了以下代码:

<Grid>
    <Label x:Name="two" Content="text"/>
    <Label x:Name="one" Content="{Binding ElementName=two}"/>      
</Grid>

我有错误说

指定元素已经是另一个元素的逻辑子元素

通过谷歌搜索,我了解到我有一个控件,它已经是某个控件的子控件,我正试图将它分配给另一个控件作为它的子控件。

我在我的代码中没有弄清楚。

什么可能导致问题?

先感谢您。

标签: wpfxaml

解决方案


您可以绑定到的Content属性two

<Label x:Name="one" Content="{Binding Content, ElementName=two}"/>

但是一个视觉元素在视觉树中只能出现一次,所以你不能将Content属性绑定到它Label本身。

顺便说一句,如果你想显示文本,你应该更TextBlocks喜欢Labels

<TextBlock x:Name="two" Text="text"/>
<TextBlock x:Name="one" Text="{Binding Text, ElementName=two}"/>

推荐阅读