主题行真的说明了一切!我有一个用户控件,可以成功地绑定到一个 Fullname 对象——也就是说,它可以正常工作。
我现在需要显示这些列表,并且再次,当控件位于 ItemsControl.Template 中的 DataTemplate 中时,这可以正常工作。
但是,该控件有一个属性 (InEditMode),它不是 Fullname 对象的属性,而是具有通过 ItemsSource 绑定 ItemsControl 的 FullnameList 属性的对象的属性。当控件不在列表中并且绑定到名为 ParentInEditMode 和 ParentFullname 的父兄弟属性时,此 InEditMode 属性可以正常工作。
问题是 - 当控件是 ItemsControl 时,需要什么样式的绑定表达式来“获取”父对象的编辑模式属性?
或者,我应该重新设计 Fullname 对象以包含 EditMode 属性吗?
提前谢谢了!
更新:
项目(即绑定到 ItemsControl 的集合中的项目)没有这样的属性。代码很简单:
<ItemsControl ItemsSource="{Binding Path=FullnameList}">
...then...
<ItemsControl.ItemTemplate>
<DataTemplate>
<jasControls:NameView
NameValue="{Binding Path=.}"
InEditMode= ??????? />
整个父级(窗口的视图模型)具有以下属性:
全名列表
ParentInEditMode
全名(用于测试 NameView 的单个项目,它在任何列表控件之外与此 xaml 完美配合使用:
<jasControls:NameView NameValue="{Binding Path=Fullname}" InEditMode="{Binding Path=ParentInEditMode}"/>
我想将编辑模式应用于整个集合 - 使该标志成为 Fullname 的一部分似乎不对!?