我有一个列表框,其中包含复选框的数据模板。我需要复选框数据上下文是用户控件而不是列表框datacontext。怎么能活跃在silverlight中,因为donot有亲戚而不是自我或模板
提前致谢
答案 0 :(得分:0)
Silverlight没有“开箱即用”的相对源绑定,但是这里有一个解决方案:
http://www.scottlogic.co.uk/blog/colin/2009/02/relativesource-binding-in-silverlight/
您可以将CheckBox的DataContext绑定到父User Conntrol(在此示例中称为MyUserControl),如下所示:
<CheckBox>
<local:BindingHelper.Binding>
<local:BindingProperties TargetProperty="DataContext"
SourceProperty="DataContext"
RelativeSourceAncestorType="MyUserCOntrol"/>
</local:BindingHelper.Binding>
</CheckBox>
如果您不想沿着这条路线前进,可以创建一个ViewModel,它暴露您绑定到复选框的对象集合,每个对象都可以提供一个返回父视图模型的引用。