如何将POCO对象绑定到WPF GUI?

如何将POCO对象绑定到WPF GUI?,wpf,user-interface,datacontext,Wpf,User Interface,Datacontext,我在一个简单的WPF应用程序中有三张图片。一辆汽车、一架飞机和一列火车 当我单击其中一个时,我加载一个适当的传输对象,该对象具有传输名称、图片文件路径和其他字符串属性。一个简单的POCO对象 如何在XAML中声明一个排序模板,这样我就可以将POCO对象作为它的数据源应用,并将属性X放在元素Foo中 以下是我的简单XAML: <StackPanel> <TextBlock>Car</TextBlock> <TextBlock>Slow

我在一个简单的WPF应用程序中有三张图片。一辆汽车、一架飞机和一列火车

当我单击其中一个时,我加载一个适当的传输对象,该对象具有传输名称、图片文件路径和其他字符串属性。一个简单的POCO对象

如何在XAML中声明一个排序模板,这样我就可以将POCO对象作为它的数据源应用,并将属性X放在元素Foo中

以下是我的简单XAML:

<StackPanel>
    <TextBlock>Car</TextBlock>
    <TextBlock>Slow</TextBlock>
    <TextBlock>4 Wheels</TextBlock>
</StackPanel>
因此,这里的属性将是我提供的POCO的模板持有者

如何提供此数据上下文

<StackPanel x:Name="transportPanel">
    <TextBlock Text="{Binding Name}" />
    <TextBlock Text="{Binding Speed}" />
    <TextBlock Text="{Binding Components}" />
</StackPanel>

WPF只能绑定到属性,而不能绑定到字段,因此在设计POCO时请记住这一点。

另一个相关问题是,有时几乎总是嵌套XAML控件。上下文是否深入到内部控件?@SergioTapia:是的。事实上,通常的做法是只将窗口的DataContext设置为某个称为ViewModel的POCO对象,然后通过在某个内部控件上设置DataContext={Binding SomePropertyOfTheViewModelReturningAnotherPoco}深入对象树。
transportPanel.DataContext = myCarObject;