【发布时间】:2009-12-10 17:33:36
【问题描述】:
我正在尝试修改使用多个表单的 C# WinForms 应用程序。启动时,将显示一个登录窗口。如果用户使用正确的用户名和密码组合登录,则具有三个不同选项卡的表单将显示为一种管理员视图。如果没有提供密码或用户名,将显示一个非常简化的 GUI。它基本上由两个按钮组成,根据按下的按钮依次显示这两种形式:
按钮 1:允许用户访问由多个文本框组成的表单,用户可以在其中输入将保存到数据库的信息。成功执行 DB 操作后,将再次显示第一个带有两个按钮的表单。
按钮 2:显示一个表单,用户可以在其中输入将写入 DB 的代码。 DB操作结束后,用户会自动回到原来的两个按钮的表单中。
这两种表单都有一个后退按钮,可以将用户带回到第一个表单。我有很多逻辑,但我不确定如何最好地处理所有涉及的表格。我应该在哪里实例化第一个(登录)表单?完成登录验证后,有两种可能的方法。显示选项卡式管理表单(如果用户名和密码正确)或带有两个大按钮的简化用户表单。还应该可以从管理表单中注销,以便显示简化的 GUI。
我希望我在这里说得通。我只需要一种很好的方法来处理它们之间的所有表单和导航。目前,实际上不需要在它们之间传输数据,但将来可能会成为一个问题,因此考虑到这一点的解决方案会非常好。
我认为真正需要的是一个从一开始就处理表单的显示和处理的类,但我不太确定应该将这个处理类的实例化放在哪里。
【问题讨论】:
-
根据您对客户端的信任以及您的网络情况,您可能需要将数据库操作移至应用服务器,并在运行它们之前仔细检查凭据。
标签: c# .net winforms architecture