有关创建可自定义触摸屏应用程序的建议

时间:2009-12-04 12:49:25

标签: .net wpf

我的公司正在开发一个触摸屏应用程序。我们有一些先前的触摸屏应用经验,并非所有这些都是积极的。我们的最后一个触摸屏应用程序包含一些巨大的缺点:

首先,应用程序构建在一堆表单上,每次用户按下“下一步”或“上一步”按钮时都会加载这些表单。不好的是,表单的顺序不是动态的。也就是说,表格B必须在表格A之后加载。表格C必须在表格B之后加载,依此类推。当我们的一位客户告诉我们时,显而易见的问题是:“嘿,我们可以在表格B之前使用表格C吗?”。今天我们要对这个问题回答“否”。

此外,许多客户希望在触摸屏应用程序上拥有自己的图形配置文件。例如,一家拥有红色和绿色标识的公司希望触摸屏应用程序具有带绿色按钮的红色背景(我知道它听起来很丑陋,但是嘿,他们是为此付费的人)。今天,该应用程序基于Windows Forms构建,这使得应用程序很难以图形方式适应客户的需求。为了给GUI带来更具吸引力的外观以及使其更适合我们客户的愿望,我们一直在考虑将WPF用于新的触摸屏应用。

所以我想,或许有人有过开发触摸屏应用程序的经验,这些应用程序既具有图形适应性,又具有适应性强的表单顺序。我需要就以下问题提出建议:

  • 我们应该使用一组表格吗? 应用,或者是否有一个 设计应用程序的更好方法是什么?
  • 我们如何才能订购 形式动态?有没有好处 这种模式?
  • 我们如何制作应用程序 以图形方式适应我们的客户 需要吗?我一直在考虑使用 WPF中的各种样式 控制,只是改变风格 当我们有一个客户时 不同的图形轮廓。这是 怎么办呢?

非常感谢有关此主题的任何建议!

2 个答案:

答案 0 :(得分:3)

您描述的问题似乎与触摸屏应用程序不同,与您用于构建它的技术和技术一样多。解决你的问题:

  1. 在winforms世界中,使用您描述的一组表单可能不是最好的方法。一个经典问题是当用户移动表单时会发生什么,然后单击“下一步>”。新窗体重新出现在窗口中间,似乎“忘记”它被移动了。通常,这种向导的更好的技术类型是创建一个单独的“容器”表单和一系列用户控件,您可以动态地将其添加到该表单并从中删除。类似的方法也适用于WPF世界,虽然我还没有这样做,所以我不知道是否有任何微妙的问题。 (我怀疑有。)

  2. 有很多方法可以做到这一点。如果不了解您的具体要求,就很难选择一个。例如,表单的顺序(如果您遵循#1的建议,则为UserControl)可以是配置部分中的类型名称列表。加载应用程序时,只需查看配置部分即可查看需要显示内容的顺序。这样,您可以向同一个应用程序销售两个客户,并且可以根据其配置使用不同的排序。

  3. 通过WPF的样式是自定义外观的最自然的答案,我同意。请注意,如果您没有内部专业知识,WPF是一个非常陡峭的学习曲线。 (值得肯定的是,但是很陡。)另一个选择,如果你坚持使用Windows窗体,可能是在显示窗体/用户控件之前动态地移动控件集合并根据控件类型更改颜色属性。但是,这感觉很乱,而且有点笨拙。我不知道在WinForms中做一些“好”的方法来做你正在寻找的东西。也许子类化需要不同颜色的控件并仅覆盖颜色?

答案 1 :(得分:0)

我还建议将WPF作为主要开发平台。它风格非常灵活,您可以快速适应每个客户的需求。

如果您曾为触摸屏编写WPF应用程序,请随意使用触摸屏键盘。请参阅链接:http://fpscomponents.com/Product.aspx?id=8

键盘非常灵活,可以使用Layout Creator以及Windows系统和皮肤/主题(预定义或自定义)上安装的任何语言进行任何布局。