我有一个usercontrol,它充当ContentControl的容器
用户控件容器有一个listview控件,我想用它来更新分配给ContentControl的动态添加的用户控件中的控件。
IOW,当我滚动listview控件时,分配给ContentControl的UC中的文本框应该更新。
当所有内容都在一个页面上没问题时,我已经完成了这个,但是很难将ListView作为datacontext传递给动态添加的UC。
如何做到这一点?
在XAML中
<ListView x:name="lstIncidents">
</Listview>
<ContentControl x:Name="PlaceHolder"></ContentControl>
在Codebehind ......
PlaceHolder.Content = new LocationView();
将“LocationView”添加到PlaceHolder.Content时,我需要传递“lstIncidents”作为datacontext,以便在ListView导航时刷新“LocationView”中的文本框。
答案 0 :(得分:13)
控件从其父级继承其DataContext,因此请尝试在ContentControl上设置DataContext:
<ContentControl
x:Name="PlaceHolder"
DataContext="{Binding SelectedItem,ElementName=lstIncidents}" />