4

我目前正在使用 Winforms 运行一个非常关键的业务应用程序。

该应用程序是一个非常核心的 UI 外壳。它接受输入数据,调用我服务器上的 web 服务进行计算,在 winforms 应用程序上显示结果,最后将打印流发送到打印机。

目前,该应用程序是使用 Click-once 部署的。

展望未来,我正在考虑是否应该将应用程序移动到 Silverlight 应用程序中。我想silverlight的几个原因。

  1. 给客户一种基于云的解决方案的感觉。
  2. 可以从任何 PC 访问。虽然 clickonce 应用程序也能够做到这一点,但他们必须安装一个应用程序,并且当更新可用时,他们必须单击“是”进行更新。
  3. 该应用程序目前有一个客户下拉列表,该列表已扩展到超过 3000 条记录。滚动列表非常痛苦。使用 Silverlight,我正在考虑自动完成功能。
  4. 在浏览器之外 - 这对于那些每天使用该应用程序的用户来说会很方便。

我以前没有使用过 Silverlight,因此在一些事情上寻找一些专家建议:

  1. 打印 - silverlight 是否允许将原始打印数据发送到打印机。应用程序打印到 Zebra 热敏标签打印机。我必须使用命令将原始字节发送到打印机。这可以用 SL 完成,还是总是提示“打印”对话框?
  2. 浏览器外 - 当 SL 应用程序安装为浏览器外时,如何进行更新,应用程序会自动更新还是提示用户选择更新?
4

2 回答 2

4
  1. 打印——使用 PrintDocument API 将提示您的用户输入打印对话框。目前使用该 API 没有办法抑制这一点。它不适用于大容量热情况(如药房、运输仓库等)。您可以使用受信任的应用程序模式并查看 COM 并使用打印机做任何您想做的事情。

  2. 更新在应用程序请求时发生。有一个 API 可供使用,一旦调用,如果存在更新,它就会被下载——不提示用户作为选项。如果发现更新,您可以提醒用户重新启动,或者在下次重新启动时他们将拥有更新的应用程序。

于 2010-06-07T01:17:16.297 回答
1

自动完成不是只能在 Silverlight 中完成的事情。您的 ClickOnce 应用程序已超出浏览器。通过原始字节打印到热敏打印机是 Silverlight 中不容易设计的东西。

不要试图听起来消极,但总而言之,听起来你最好只是努力增强你已经拥有的应用程序。

于 2010-06-06T23:32:27.957 回答