没有列表框/项目源的数据模板
我对 WPF 相当陌生,并且很难理解 DataTemplate、DataContext 以及当然还有 MVVM 的微妙之处。 我的问题是这样的: 我想为 Person 类创建一个 DataTemplate - 其中包含一个包含三个标签的网格 - 用于名字、姓氏和年龄。 创建 DataTemplate 后,我希望将一个人添加到主窗口中的主网格,而不需要列表框或具有 ItemSource 的组件。
总结我的问题 - 我想知道是否有一种方法可以使用 DataTemplate 可视化对象,其中我不必将它们添加到集合中,然后添加到 ItemsSource。
谢谢!
I'm fairly new to WPF, and I'm having a difficulty understanding the subtlety of DataTemplate, DataContext and ofcourse - MVVM.
My problem is this:
I want to create a DataTemplate for the class Person - which contains a grid which contains three lables - for the First Name, Last Name and Age.
After creating my DataTemplate, I wish to add a person to the main grid in the mainwindow, without a listbox or a component which has ItemSource.
To sum up my question - I want to know if there's a way to visualize objects with DataTemplate in which i dont have to add them to a collection and then to ItemsSource.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要的是一个 ContentPresenter,该元素使用其 ContentTemplate 属性指定的 DataTemplate 显示其 Content 属性指定的数据。因此,在您的示例中,您可以使用以下内容:
作为参考,这是按钮等控件在其模板中用于呈现其内容的元素。
What you need is a ContentPresenter, this element displays the data specified by its Content property using the DataTemplate specified by its ContentTemplate property. So, in your example, you can use the following:
For reference, this is the element that controls such as Buttons use within their template to render their content.