DataGrid:相同的列,不同的输入方法?

时间:2014-01-03 00:53:31

标签: wpf wpf-controls wpfdatagrid

我不是WPF专家。在修补了一些项目之后,这是我的第一次全面尝试。它不像“Windows Forms”那么简单,但灵活性足以弥补它!

我有一个包含所有应用程序设置的实体。用户通过DatGrid与它们连接。 Column是TextBox,但内容可以是字符串可以表示的任何内容(text / string,date,integer,double等)。

为了方便用户使用,并且不易出错,我想提供一个适合插入数据的[User?]控件(下面的虚构方法,可能不可能/不切实际)。 ..考虑一下伪代码ish ):

  • 在实例/实体的不可见列/属性中,我将指定“date”/“DatePicker”,下拉等。
  • DataGrid中的“value”列将保留/接受该行的设置。
  • 如果涉及日期,则可以为设置列的该行提供日期选择器。
  • TextBox看起来像普通的DataGrid单元格......你明白了......
  • 我已经解决了所有CRUD操作,一直回到数据库(需要一段时间来弄清楚,但是使用DBContext / Entities我现在是一个巨大的转换为WPF / EF6!

  • 此应用程序在VB(VS2012Ult)中,但由于我也在C#中编写,因此我可以轻松转换任何示例/示例代码。

免责声明:作为一种方法,这可能看起来很笨拙/愚蠢,但是用户以错误的方式输入错误的格式,等等。这种方法适用于非技术人员/编码人员能够可靠地使用该应用程序没有经常调用帮助台。

注意:很久以前,this thread提出了一个非常相似的问题,如果不相同的话。我要求看看从那以后有什么改进。我不是WPF专家。

1 个答案:

答案 0 :(得分:0)

你基本上在寻找PropertyGrid,类似于:

enter image description here

1 - 轻松出路:使用上面链接的(免费,开源)扩展WPF工具包。

2 - 艰难的出路:

自己构建,以便您可以学习很多漂亮的WPF并根据您的特定需求进行调整。

使用ItemsControl和多个DataTemplate(每种数据类型一个)。首先阅读ItemsControl链接。