一直在一个简单的C#Windows应用程序。我已经能够将一些变量从一种形式传递到下一种形式,并使用form2 y = new form2(passingVariable); y.ShowDialog();
,然后在下一种形式public form2(string myVariable)
上使用它们。但是这种方法只允许我在大括号内使用变量。目前我正试图将它传递给下一个表格。但是,当我尝试使用上面提供的代码行将它传递到下一个表单时,它不会让我使用该变量。它给了我错误名称'userName'在当前上下文中不存在我有很多的源代码,不知道什么是我需要共享,所以这里是我的webng.com帐户link与如果任何人需要检查它,我的源代码将设置非常简单的网页。传递变量形式在c#中形成私人的全球?
回答
尝试在当前表单上创建另一个变量来存储该用户名,然后将传递给该变量的用户名分配给该变量。您的构造函数将如下所示:
private string username;
public talkingWithProgram(string userName, string pcName)
{
InitializeComponent();
this.Text = pcName;
programQuestion.Text = "Whatcha wanna talk about \n" + userName + "?";
this.userName = userName;
}
sportsCategories y = new sportsCategories(userName);
创建一个新的sportsCategories类现在可以从此上下文中传递userName,该值具有上一个表单的值。目前,它看起来像是在方法上下文中超出范围的构造函数中引用userName。
非常感谢@Knightwisp :)这解决了我遇到的错误信息。只要我插入'私人字符串用户名';和'this.userName = userName'然而,在将这些信息插入到我的程序中之后,会有一个新的错误消息,读取''''''重载'sport_click'匹配委托'System.EventHandler' – SubZero
您的代码有一个sports_Click()方法。它是一样的吗?也许这是一个错字。尝试使用户名受保护或甚至是公开的,以便它可用于命名空间中的其他类。另外,声明“public string userName”在正确的地方;即“DialogResult结果”之后。让它成为“sportsCategories y = new sportsCategories(这个。username);“ – Knightwisp
说实话,这段代码有点难读,但是尝试了上面的代码 – Knightwisp
我会避免在窗体的构造函数中设置特定的变量。通常情况下,使用getters and setters或专门为此目的指定的功能更为习惯。
例如:如果你可以有代码form2 y = new form2(passingVariable);
相反,你可以有代码
form2 y = new form2();
form2.SetMyVar(passingVariable);
,或者,如果您使用的getter和setter方法:
form2 y = new form2();
form2.SetMyVar = passingVariable
这样一来,只要你需要设置或更新变量,只要你有一个表单的引用就可以做到。另外,在所说的SetMyVar()
函数中(如果你选择那个方法),一定要设置一个类变量。 在您的代码中,类变量超出了您的函数范围,以便它们对该类实例的所有函数都可见。
在XYZ类初始化变量 指定值,将其在构造像
String a1,b1=String.empty
Class xyz
{
xyz(string a,string b)
{ //constructor
a1=a;
b1=b;
//Now use them in whole class
}
}
,或者如果你想在整个应用程序中使用它们,然后在Program.cs中 那么你可以在全局初始化它们设置并获取值如
Program.a1="abc" //assigning value
字符串a1和b1必须位于类定义内。另外他可能应该公开构造函数。 – ahmelsayed
- 1. 全球窗口形式比。本地或私人窗口形式
- 2. VB.NET传递变量为另一种形式的私人小组
- 3. 传递变量以形成
- 4. Activator.CreateInstance传递变量形式
- 5. 传递变量形式javascript
- 6. Winforms C#形式间传递变量
- 7. 错误变量传递在PHP形式
- 8. 传递变量不改变形式
- 9. 传递变量的形式 - Symfony2的
- 10. 传递一个变量形成
- 11. 的Visual C++形式:全球的keydown
- 12. 传递变量的形式上课,从另一种形式
- 13. 将形式变量传递给参数
- 14. 传递形式变量通过wordpress页
- 15. 以形式传递Javascript变量
- 16. 将变量传递给HTML形式Javascript
- 17. 从输入传递变量到形式
- 18. 以变量形式传递数据-highcharts
- 19. 从Twig形式传递变量
- 20. C#全局变量为所有形式
- 21. Xamarin形成全球存储
- 22. 在2种形式之间传递变量,多线程C#
- 23. 通过php形式传递全局变量?
- 24. 私人全球与公共全球
- 25. 在Qt中将变量从一种形式传递到另一种形式
- 26. 在vb.net中将变量从一种形式传递到另一种形式
- 27. 传递形式
- 28. 传递含量值形成Android Studio中
- 29. 如何在PHP中以$ _POST键的形式传递变量?
- 30. 在Rspec中传递形式变量以更新方法
请使用pastebin或类似的代码异地代码。它以可读的方式格式化代码。另外请确保当您粘贴到pastebin中时,您的代码已被正确描述。 – selkathguy