没有列表框/项目源的数据模板

问题描述 投票:0回答:1

我对 WPF 相当陌生,并且很难理解 DataTemplate、DataContext,当然还有 MVVM 的微妙之处。 我的问题是这样的: 我想为 Person 类创建一个 DataTemplate - 其中包含一个包含三个标签的网格 - 用于名字、姓氏和年龄。 创建 DataTemplate 后,我希望将一个人添加到主窗口中的主网格,而不需要列表框或具有 ItemSource 的组件。

总结我的问题 - 我想知道是否有一种方法可以使用 DataTemplate 可视化对象,其中我不必将它们添加到集合中,然后添加到 ItemsSource。

谢谢!

c# wpf binding datatemplate
1个回答
1
投票

您需要的是一个ContentPresenter,该元素使用其ContentTemplate属性指定的DataTemplate来显示其Content属性指定的数据。因此,在您的示例中,您可以使用以下内容:

<ContentPresenter ContentTemplate="{StaticResource YourTemplate}"
                  Content="{Binding PathToYourPerson}"/>

仅供参考,这与 Button 等控件在其模板中用于呈现内容的元素相同

© www.soinside.com 2019 - 2024. All rights reserved.