WPF数据指标内部<Usercontrol>标头不工作

问题描述 投票:0回答:1
我有一个问题,如果我在我的定义中添加了usercontrol的可见性,我会遇到错误。但是,如果我将完全相同的绑定定义复制到该用户控制的基本网格中,则绑定良好。

我无法在
<Usercontrol>

定义中直接绑定?

行不起作用:

<UserControl>

有错误:

<UserControl <...> mc:Ignorable="d" d:DesignHeight="450" d:DesignWidth="800" Visibility="{Binding ControlVisibility, RelativeSource={RelativeSource AncestorType={x:Type local:TaskItemDisplayControl}}}"> <Grid x:Name="BaseGrid">

Works(无错误):

System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='TaskForceSigma.UI.Controls.TaskItemDisplayControl', AncestorLevel='1''. BindingExpression:Path=ControlVisibility; DataItem=null; target element is 'TaskItemDisplayControl' (Name='RootTaskControl'); target property is 'Visibility' (type 'Visibility') 我最好的猜测是,当评估

<UserControl <...> mc:Ignorable="d" d:DesignHeight="450" d:DesignWidth="800"> <Grid x:Name="BaseGrid" Visibility="{Binding ControlVisibility, RelativeSource={RelativeSource AncestorType={x:Type local:TaskItemDisplayControl}}}">
的定义时,尚不可用的相关绑定信息?

为了澄清,对于设计器中添加的两个控件以及代码实例化的控件都会发生此错误。
除非我将绑定添加到基本元素中,否则代码也永远不会碰到Control Visisible Getter内部的断点。
    

确定

<UserControl>

是您在这里显示的USERCONTROL类,与taskitemdisplayControl不是其自己的祖先。

wpf data-binding user-controls
1个回答
0
投票
使用biond:

RelativeSource
abesides,这是不核心的,为什么您的控件将完全具有额外的可见性属性。
    

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.