0

我正在为 Windows 桌面机器启动一个 C# 应用程序。

我想知道我的方案的最佳方法是什么。

我有 2 个简单的表单,一个将有几个按钮,它们将是主要的启动表单。第二个表格将包含一些标签和文本字段,这些字段将由扫描仪填写。稍后我将尝试仅接受来自 com 端口的输入,因此使用它的人不必选择程序来获取输入。在第二个表单中的最后一个文本框被正确填写后,程序返回到第一个表单。

我正在考虑显示新表单并隐藏主要表单,但我认为最好在一个窗口中。

我对 C# 很陌生,所以这是最佳实践的学习经验。

谢谢

4

1 回答 1

1

我不太确定您想要什么信息之王,但鉴于“我对 C# 非常陌生”,我会为您提供我认为当我“对 C# 非常陌生”时我需要知道的信息。

我个人建议不要使用 windows 窗体并使用WPF。它允许您制作完全可定制的应用程序,并向您的应用程序添加许多使用Forms.

在使用的情况下WPF,您可能会有一个窗口和两个单独UserControls的 . 根据此应用程序的复杂程度,您应该考虑使用类似( http://msdn.microsoft.com/en-us/magazine/dd419663.aspx ) 的模式;您可能期望您的应用程序变得越复杂,我越推荐使用它。MVVM

在 using 的情况下MVVM,您的两个Forms(我将它们称为UserControls)都会有一些DataContext集合。这DataContext将是视图(您的UserControl)将绑定到的类。所以想法是,您可能在 this ViewModel(the DataContext) 中有方法,这些方法将使用来自 COM 端口的数据填充其成员,并且 View (the UserControl) 将绑定到它的DataContext( ViewModel),这将指示ViewModel. 当ViewModel一个值被更新时,它也有责任通知视图,以便它可以显示它。ViewModel 上的属性也可以更新(通过绑定),以指示用户在UserControl. 因此,例如,您Textbox可能会绑定到String property,以便在String property更改时进行Textbox更新。同样,当文本中的内容Textbox发生变化时,字符串属性也会随之更新。这都是可定制的。这个想法是在和之间有一个干净的分离ViewViewModel这样东西很容易测试并且不太可能破坏。

我不确定你在找什么,但我希望这会有所帮助!!

祝你好运

于 2013-07-04T02:02:48.833 回答