打开新表单或编辑当前表单
本文关键字:表单 编辑 新表单 | 更新日期: 2023-09-27 18:20:52
我正在为windows桌面计算机启动一个C#应用程序。
我想知道我的场景最好的方法是什么。
我有两个简单的表格,其中一个有几个按钮,这将是主要的开始表格。第二个表格将有一些标签和文本字段,这些字段将用扫描仪填写。稍后我将尝试只接受来自com端口的输入,这样无论谁使用它,都不必选择程序来获得输入。在第二个表格中的最后一个文本框填写完毕后,程序返回到第一个表格。
我想展示新的形式并隐藏主要的形式,但我认为最好在一个窗口中。
我是C#的新手,所以这是最佳实践的学习经验。
感谢
我不太确定你想要什么样的信息之王,但考虑到"我对C#非常陌生",我会给你一些我认为在我"对C#非常熟悉"时需要知道的信息。
我个人建议不要使用windows窗体,使用WPF。它允许您制作完全可定制的应用程序,并为应用程序添加许多使用Forms
无法实现的功能(尤其是视觉功能)。
在使用WPF
的情况下,可能会有一个窗口和两个单独的UserControls
。根据此应用程序的复杂程度,您应该考虑使用类似MVVM
的模式(http://msdn.microsoft.com/en-us/magazine/dd419663.aspx);你可能期望你的应用程序变得越复杂,我就越建议你使用它
在使用MVVM
的情况下,您的两个Forms
(我将它们称为UserControls
)都将分别设置一些DataContext
。DataContext
将是视图(您的UserControl
)将绑定到的类。因此,我们的想法是,在这个ViewModel
(DataContext
)中可能有一些方法,这些方法将用COM端口的数据填充其成员,而视图(UserControl
)将有指向其DataContext
(ViewModel
)的绑定,这些绑定将指示ViewModel
中的数据。ViewModel
还负责在值更新时通知View,以便它可以显示它。ViewModel上的属性也可以更新(通过绑定),以指示用户在UserControl
上更改了某些内容。因此,例如,您的Textbox
可能绑定到String property
,因此当String property
发生更改时,Textbox
会更新。类似地,当Textbox
中的文本发生更改时,字符串属性也会更新。这一切都是可定制的。这个想法是View
和ViewModel
之间有一个干净的分隔,这样东西就很容易测试,而且不太可能坏掉。
我不太确定你在找什么,但我希望这能有所帮助!!
好运