将 DataContext 传递给 WPF 中的用户控件
我有一个充当 ContentControl 容器的用户控件。
用户控件容器有一个列表视图控件,我想用它来更新分配给 ContentControl 的动态添加的用户控件中的控件。
IOW,当我滚动列表视图控件时,分配给 ContentControl 的 UC 中的文本框应该更新。
当所有内容都在一页中时,我已经这样做了,没有问题,但我很难将 ListView 作为数据上下文传递到动态添加的 UC。
如何才能做到这一点?
在 XAML 中
<ListView x:name="lstIncidents">
</Listview>
<ContentControl x:Name="PlaceHolder"></ContentControl>
的代码隐藏中...
PlaceHolder.Content = new LocationView();
将“LocationView”添加到 PlaceHolder.Content 时,我需要传递“lstIncidents”作为数据上下文,以便在导航 ListView 时刷新“LocationView”中的文本框。
I have a usercontrol that acts as a container for a ContentControl.
The user control container has a listview control that I want to use to update controls in a dynamically added user control assigned to the ContentControl.
IOW, as I scroll through the listview control, the textbox's in the UC assigned to the ContentControl should update.
I've done this when everything is in one page no problem, but am having a hard time passing the ListView as a datacontext to the dynamically added UC.
How can this be done?
In XAML
<ListView x:name="lstIncidents">
</Listview>
<ContentControl x:Name="PlaceHolder"></ContentControl>
In Codebehind...
PlaceHolder.Content = new LocationView();
When adding the "LocationView" to the PlaceHolder.Content, I need to pass "lstIncidents" as the datacontext so the textboxs in "LocationView" refresh as the ListView is navigated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
控件从其父控件继承 DataContext,因此请尝试在 ContentControl 上设置 DataContext:
Controls inherit their DataContext from their parent, so try setting the DataContext on the ContentControl: