2013-07-25 52 views
-5

我是C#Winforms的新手。有很多人问这个问题,但我仍然找不到答案。C#窗体将值传递给另一个

我有一个操作数据并将信息上传到服务器的表单。现在我硬编码服务器信息。我创建了另一个表单,要求用户输入服务器/登录信息。我想将服务器/登录信息传递给第一种形式。我会怎么做呢? 谢谢

+0

你有什么尝试,显示一些代码,有人可能能让你朝着正确的方向前进。 – Bit

+0

您可以将您的用户名/密码变量设置为公共,并在显示表单时使用ShowDialog并检查DialogResult.OK。在那个检查里面你可以引用这些变量,比如:loginForm.Username等:) – LokiSinclair

+0

哪个表格调用哪个? (主表单弹出另一个询问信息的对话框,或请求表单是否在输入详细信息后打开处理表单? –

回答

0

请参考以下关于传递参数的MSDN页面:

http://msdn.microsoft.com/en-us/library/0f66670z(v=vs.71).aspx

就我个人而言,我会在一个单独的类中执行数据访问并实现一个public void Login(string user, string password, string server)方法。然后第二种形式将利用这个类的其他方法来检索和显示数据。

+1

只是为了阐明您对实施公共无效登录的建议函数...你会在第一种形式创建函数?并通过调用登录函数访问它的第二种形式..我将如何去做这个..让我们说例如 –

+0

抱歉..我不得不去工作..我会考虑这个选项 –

+0

不要以任何形式放置你的数据访问代码创建第三个类AuthSystem,它包含一个公共的'bool Login(string user,string pass,string server)'方法。你正在进行额外的服务器通信,除了身份验证之外,我还会创建另一个类来设置和管理与远程系统的连接。一般来说,每个类都应该有一个相当特殊的通过它可以与其他类交互的目的和定义明确的接口。 Google“面向对象的设计实践”提供了更多信息。 – Dan

0

有多种方法。仅举几下,你可以:

  • 创建静态类,以便所有形式都可以访问它
  • 创建您的形式和属性设定值
  • 创建您的登录窗体上的事件,有你等形式注册事件,并通过自定义eventargs类传回值
0

我猜有很多方法可以做到这一点。

  • publicinternal性质上的形式
  • 事件
  • publicinternal方法(包括两种形式,具体取决于其形式将数据发送到哪个)
相关问题