0

我想开发一个简单的 Windows 应用程序(使用 C#),如下所示:

  • 一个简单的基于对话框的应用程序,具有三个屏幕
  • 第一个屏幕只是一个欢迎用户并解释如何进行的屏幕
  • 第二个是一个拖放屏幕,用户可以在其中拖放文件(图像文件)
  • 然后它对提供的图像执行操作,并将实时结果显示为列表视图,其中包含状态和完成百分比

我已经有了图像处理代码,这对我来说很容易,但我对应用程序本身很迷茫......

以下是我的问题:

  • 我应该使用 winforms 还是 WPF 进行开发?我想添加自己的字体,使我使用的图像具有透明度,并显示自定义列表视图单元格和控件...
  • 在基于对话框的应用程序中拥有多个屏幕的最佳方式是什么?我正在考虑使用 TabControl,隐藏标题并在用户单击“下一步”按钮后以编程方式从第一个屏幕切换到第二个屏幕,然后在文件被拖放到窗口后切换到第三个屏幕......
  • 以及拥有一个对图像文件执行操作的后台进程的最佳方法是什么,在不阻塞 UI 的情况下为用户提供一些反馈(带百分比的进度条)
4

3 回答 3

1

我应该使用 winforms 还是 wfp 进行开发?我想添加自己的字体,使我使用的图像具有透明度并显示自定义列表视图单元格和控件

我投票给 WPF。

  • 它支持更多的拖放操作
  • 它有更好的用户界面,例如圆角和可能的透明度(没有使用透明度)
  • 很容易自定义列表视图和控件

在基于对话框的应用程序中拥有多个屏幕的最佳方式是什么

对于拥有多个屏幕,您可以使用 Frame,并使用其源更改为不同的视图。使用选项卡控件也可以,但它允许用户跳过第 2 页,而是直接转到第 3 页。

以及拥有对图像文件执行操作的后台进程的最佳方法是什么

BackgroundWorker 将对它有用。它应该是线程安全的。

于 2013-04-09T03:19:18.700 回答
0

这是我的问题: - 我应该使用 winforms 还是 wfp 进行开发?我想添加我自己的字体,有透明度

这真的取决于。你知道 windows 窗体和/wpf 吗?如果您都使用 WPF,但如果您不知道任何一个,请选择 Windows 窗体,因为它很容易。

我使用并显示自定义列表视图单元格和控件的图像... - 在基于对话框的应用程序中拥有多个屏幕的最佳方式是什么?我正在考虑使用 TabControl,隐藏标题并在用户单击“下一步”按钮后以编程方式从第一个屏幕切换到第二个屏幕,然后在文件被拖放到窗口后切换到第三个屏幕......

一旦你得到一些工作,我们很容易给你我们的意见。

以及拥有一个对图像文件执行操作的后台进程的最佳方法是什么,在不阻塞 UI 的情况下为用户提供一些反馈(带百分比的进度条)

这两个框架都允许您这样做。这里有很多选项,最简单但非常有用的是 BackgroundWorked。

非常感谢您抽出宝贵的时间和对这些主题的帮助!!

于 2013-04-09T03:19:06.347 回答
0

WPF 在外观上更好,但我认为 WinForm 在你的情况下已经足够好了。

您可能需要将字体复制到 Windows 字体文件夹才能使用它。但是,它需要 UAC 的授权。

我也TabControl喜欢 但是,如果您要限制用户必须遵循您的进度(不能跳过某些选项卡),您可以使用多面板来代替它。

如果您的后台工作非常简单,则可以使用该BackgroundWorker组件。否则你需要创建线程。

于 2013-04-09T03:26:58.917 回答