在C#visual Studio中将字符串从一种形式传递到另一种形式
之前也有人问过类似的问题,但我的问题有点不同 在这种情况下,在我的中一课程中,我有以下代码:在C#visual Studio中将字符串从一种形式传递到另一种形式,c#,winforms,C#,Winforms,之前也有人问过类似的问题,但我的问题有点不同 在这种情况下,在我的中一课程中,我有以下代码: public partial class Form1 : Form { String hello; Form2 frm2 = new Form2(); public Form1() { InitializeComponent(); } private void btnFindMe_Click(object sender, EventA
public partial class Form1 : Form
{
String hello;
Form2 frm2 = new Form2();
public Form1()
{
InitializeComponent();
}
private void btnFindMe_Click(object sender, EventArgs e)
{
hello = "hi";
frm2.myProperty = hello;
frm2.Show();
}
}
现在,在我的Form2课程中,我有:
public String myProperty { get; set; }
private void btnOK_Click(object sender, EventArgs e)
{
MessageBox.Show(myProperty);
}
所以基本上,myProperty返回null。但是如果我写过
字符串hello=“hi”;
在Form1类中,它将返回为“hi”
如何解决此问题?传入Form2构造函数问题是messagebox弹出为空白。我假设这是因为所传递的只是“String myProperty”;根据您发布的代码,它应该可以正常工作-因此,其他方法是在
Form1
中将hello
设置为null,或者在Form2
中将myProperty
设置为null。我会在调试器中运行它,观察这些变量并查看它们何时更改。请重新生成解决方案并重试。传入Form2构造函数。问题是messagebox弹出为空白。我假设这是因为所传递的只是“String myProperty”;根据您发布的代码,它应该可以正常工作-因此,其他方法是在Form1
中将hello
设置为null,或者在Form2
中将myProperty
设置为null。我会在调试器中运行它,观察这些变量并查看它们何时更改。请重新生成解决方案,然后重试。