我是一个新手程序员,我一直把它作为一种爱好,然后是一种职业。因此,我正在为我的公司开发发票的应用程序。我有发票的工作,从我们的供应商接收数据馈送,并匹配客户,产品和费率等,并生成发票。我现在正试图让它变得漂亮起来,并允许客户和费率细节进行编辑。其中的一部分意味着我有许多可以保存查找值的表格,例如增值税率,标记价值,自定义费率。.NET4 WPF Datagrid - 响应不同的数据类型
我在WPF,C#,.Net 4中编写应用程序。我也试图保留MVVM模式来分离图层。
我创建了一个名为EditLookupTableViewModel的通用VeiwModel,它处理与数据层以及所有其他层的对话。我的问题是与视图。我想创建一个单一的视图,可以处理我在上面的类上允许的所有数据类型。我坚持的是这个。
我想将数据显示为数据库表中当前值的列表,并允许用户编辑这些值或添加新值。各种数据类型都基于通过实体框架4访问的SQL数据库中的表。这些表并不都具有相同数量或类型的列。
如果我使用DataGrid控件将数据显示为列表,那么如何根据显示的数据类型更改列类型?
我一直在各种网站上搜索,但还没有找到合适的东西。
我想我可以使用DataTemplate,然后使用DataTemplateSelector,但我没有看到为DataGrid创建DataTemplate的任何方式。
然后我想我会使用一个ContentPresenter,但我不明白你会如何选择模板。
理想情况下,我想使用某种模板TemplateSelector,因为我可以控制代码中的模板,因为几个表具有相同的结构,因此,对于那些相同的表重复使用模板会很好。
任何帮助将不胜感激,因为我确信必须有比创建多个视图更优雅的解决方案。
感谢
西蒙
感谢您的快速响应。这可能是一个解决方案,但我不想在这一点上使用WCF。另外我不想使用Silverlight。该平台是WPF,并且会因为本文范围之外的原因而停留。 我想为DataGrid根据传递给它的对象的类型来更改它的列的数量和类型,但我不想让它自动生成这些列,因为我不一定想要一直显示所有列。 – SBuckner 2010-08-13 13:20:31