3

目前,我正在为发票制作定制解决方案。我为客户创建了多种方法来创建他们的模板(HTML、Word、LaTex)并根据他们的模板获取发票。但是,这些发票是一方手动生成的。

所以,过程是:

  • 请求创建新发票
  • 初步发票已创建
  • 用户有机会进行更改(即添加、删除、更改行)
  • 创建一个 pdf

需要明确的是,初步发票不需要像模板那样格式化,但您应该能够添加/删除/更改行,并且对于每个单元格,指示该值是否应该在最终结果中可见。

我的问题是我找不到合适的方式来显示初步发票。我尝试了一个数据网格(默认,telerik,devexpress),但它太乱了。除了数据网格,我不知道我可以使用什么。

我可以最好地使用哪些控件来拥有一个漂亮且可用的 UI。

4

5 回答 5

2

请不要这样:

替代文字 http://bitsandpieces.us/wp-content/uploads/2008/03/imagesapple-20google-20and-20you.png

于 2009-11-01T11:36:09.587 回答
1

你的平台是什么?窗体?WPF?

您到底不喜欢为此使用数据网格是什么?部分问题在于,无论您喜欢与否,您都将编写一个数据网格——您基本上描述了一个数据网格的特性。如果可能,请尝试使用其他人的数据网格,因为它会为您节省大量工作。通常,第 3 方数据网格应该是相当可定制的,并且您应该能够使其看起来像您想要的那样 - 并利用内置的排序、编辑、分组等。从头开始创建一个类似数据网格的控件并不容易并且应该尽可能避免。

您不必拥有一个普通的巨型数据网格 - 您可以创建一个自定义控件,以任何您喜欢的格式显示发票,实时数据网格仅出现在发票显示表格数据的地方,格式化为发票的一个组成部分本身。

于 2009-11-01T11:29:28.743 回答
1

我正在做类似的事情,客户可以在将发票发送给客户之前编辑甚至删除发票的行项目。

他们运行业务的当前应用程序是 WebForms Intranet 应用程序,因此这是对其的扩展。所以他们可以相当容易地添加/删除/编辑行。

但叶戈尔是对的。无论您做什么,您本质上都是在谈论数据网格。我认为您想要一些“更清洁”和更直观的东西?

简单是困难的。

于 2009-11-01T11:40:33.100 回答
1

此类事物的典型 UI 范例是将其视为两个独立的问题:为用户提供一种查看他可以修改的元素的方式,并赋予他修改任何特定元素的能力。您使用列表控件(ListBox, ListViewTreeView如果元素按层次组织或需要分组到类别中)来呈现元素,然后当用户选择元素时,程序会呈现字段名称和可编辑值控件的表格呈现。

基本上,您将程序的功能分为两类:用户想要对行执行的操作(添加、删除、重新排序、选择)和用户想要对所选行的元素执行的操作。

如果您使用 a ,您可以将这两组功能组合为一个DataGridView,但正如您所看到的,如果您正在编辑的元素有任何复杂性,那么它会变得非常难看。

两种可能的方法:属性表范例(选择对象,右键单击,选择“属性”,在模式对话框中编辑值),或者窗口分成两个面板的范例,一个是行和其他是当前选定行的详细信息。还有很多其他的。

于 2009-11-01T20:03:03.670 回答
0

我会看看已经存在的东西,尤其是发票,看看他们是怎么做的。

不确定您的公司有多大,但利用大公司的应用程序和用户界面,将数千/数百万美元投入到用户界面设计和测试中,这永远不会受到伤害。

我会看看以下任何一个(大多数提供免费试用,或者只是尝试搜索屏幕截图):

只是一些想法......希望这会有所帮助!

于 2009-11-01T11:57:52.247 回答