Datatemplate没有Listbox / Itemssource

时间:2011-01-24 21:43:12

标签: c# wpf binding datatemplate

我是WPF的新手,我很难理解DataTemplate,DataContext和ofcourse的微妙之处 - MVVM。 我的问题是: 我想为Person类创建一个DataTemplate,它包含一个包含三个标签的网格 - 用于名字,姓氏和年龄。 在创建我的DataTemplate之后,我希望在主窗口的主网格中添加一个人,而不需要列表框或具有ItemSource的组件。

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

谢谢!

1 个答案:

答案 0 :(得分:0)

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

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

作为参考,这是控制诸如按钮在其模板中使用以呈现其内容的元素。