如何在单个模板中绑定多个 ListView?

发布于 2024-12-13 18:03:34 字数 337 浏览 2 评论 0原文

我有一个用于 3 个 ListView 的 ControlTemplate。 我在 ListView 上使用模板,例如。

Template="{StaticResource listViewTemplate}"

当我尝试将 Collection 绑定到列表视图 ItemsSource 时,什么也没有发生。 如果我绑定 ControlTemplate 的 Collection ItemsSource 它工作正常。

问题是我有 3 个 ListView 使用此 ControlTemplate,并且我想将 3 个不同的集合绑定到 ListView。

这可能吗?

I have a ControlTemplate for 3 ListViews.
Im Using the Template on a ListView eg.

Template="{StaticResource listViewTemplate}"

When i try to bind a Collection to the list views ItemsSource nothing happents.
If i Bind the Collection ItemsSource of the ControlTemplate it works fine.

The Problem is i have 3 ListViews using this ControlTemplate and i want to bind 3 different collections to the ListViews.

Is this possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夜夜流光相皎洁 2024-12-20 18:03:34

您的控件模板需要使用 TemplateBinding 绑定其 ItemsSource,例如,

<ControlTemplate ...>
    <ItemsSource = "{templateBinding ItemsSource}"

这将使您能够在列表视图 ItemSource 上绑定集合(这将传递到 ControlTemplates ItemsSource)

Your control template needs to bind its ItemsSource using TemplateBinding eg

<ControlTemplate ...>
    <ItemsSource = "{templateBinding ItemsSource}"

That will enable you to bind a collection on the list views ItemSource (this will get passed on to the ControlTemplates ItemsSource)

oО清风挽发oО 2024-12-20 18:03:34

x:Shared="False" 添加到您的静态资源。这将确保每次请求资源时都会创建对象的浅表副本。

这样,每个 ListView 将获得控件模板的不同实例。

以下是有关它的文档: http://msdn.microsoft.com/en-我们/library/aa970778.aspx

Add x:Shared="False" to your static resource. This will make sure a shallow copy of the object is made every time you request the resource.

This way each of your ListViews will get a different instance of the control template.

Here is the documentation on it: http://msdn.microsoft.com/en-us/library/aa970778.aspx

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文