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

时间:2011-12-15 20:28:04

标签: wpf user-interface datacontext

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

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

如何在XAML中声明各种类型的模板,以便我可以将该POCO对象应用为数据源,并将属性X放在元素Foo中?

这是我的简单XAML:

<StackPanel>
    <TextBlock>Car</TextBlock>
    <TextBlock>Slow</TextBlock>
    <TextBlock>4 Wheels</TextBlock>
</StackPanel>

所以这里的属性将是我提供的POCO的模板持有者。

如何提供此数据上下文?

1 个答案:

答案 0 :(得分:4)

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

在代码中,您设置数据上下文:

transportPanel.DataContext = myCarObject;

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