WPF DataGrid:如何绑定到自定义属性

时间:2011-02-06 23:15:53

标签: wpf datagrid

我有一个从LINQ生成的Customer类。这个类正在很多地方使用。我可以将一组Customers绑定到DataGrid(WPF)。我想在DataGrid中添加一个额外的列。列数据取决于Customer类的使用方式。以下是我尝试的选项:

  1. 在Customer类中添加额外属性。这可以,但属性不属于这里,因为它可能取决于类的使用方式。
  2. 创建另一个派生自Customer的类。这不起作用,因为我们无法将Customer转换为派生类,而Customer列表是我从数据库中获取的内容。
  3. 创建另一个包含Customer的类,并重新实现所有相关属性。这太丑了。
  4. 为所需属性创建扩展方法。不幸的是,我们无法将DataGrid列绑定到扩展方法。
  5. 此时,这些选项要么不起作用,要么不理想。我将不胜感激任何建议。

1 个答案:

答案 0 :(得分:0)

这听起来像是视图模型的工作,因此我倾向于选项3,并创建一个CustomerViewModel来包装您的Customer模型并添加您需要的附加属性。我假设这个附加属性仅用于显示目的,这就是您不愿意将其添加到Customer模型的原因。