我对 WPF 相当陌生,并且很难理解 DataTemplate、DataContext,当然还有 MVVM 的微妙之处。 我的问题是这样的: 我想为 Person 类创建一个 DataTemplate - 其中包含一个包含三个标签的网格 - 用于名字、姓氏和年龄。 创建 DataTemplate 后,我希望将一个人添加到主窗口中的主网格,而不需要列表框或具有 ItemSource 的组件。
总结我的问题 - 我想知道是否有一种方法可以使用 DataTemplate 可视化对象,其中我不必将它们添加到集合中,然后添加到 ItemsSource。
谢谢!
您需要的是一个ContentPresenter,该元素使用其ContentTemplate属性指定的DataTemplate来显示其Content属性指定的数据。因此,在您的示例中,您可以使用以下内容:
<ContentPresenter ContentTemplate="{StaticResource YourTemplate}"
Content="{Binding PathToYourPerson}"/>
仅供参考,这与 Button 等控件在其模板中用于呈现内容的元素相同