c#新表单返回值不能被Mainform识别
本文关键字:不能 Mainform 识别 返回值 新表单 表单 | 更新日期: 2023-09-27 18:12:50
我通过工具栏打开了一个额外的表单,输入主表单中需要的Username(并且在主表单中声明为String)
Mainform代码:
private void toolStripButton6_Click(object sender, EventArgs e)
{
using (Form frm = new Form3())
{
frm.FormBorderStyle = FormBorderStyle.FixedDialog;
frm.StartPosition = FormStartPosition.CenterParent;
if (frm.ShowDialog() == DialogResult.OK)
{
Username = frm.ReturnValue1;
}
}
}
格式代码:
public string ReturnValue1 {
get
{
return textBox1.Text;
}
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
c#告诉我没有form。ReturnValue1:(
您已声明您的表单类型为Form
而不是Form3
:
using (Form frm = new Form3())
和作为类Form
没有属性ReturnValue1
你得到的错误。因为Form3
是Form
的子类,所以可以将其赋值给Form
类型的变量,而不需要进行任何类型转换。如果反过来,编译器会告诉你需要强制类型转换。
你的代码应该是:
using (Form3 frm = new Form3())
或者(我更喜欢):
using (var frm = new Form3())
那么它将永远是正确的类型,并且如果您将来决定使用不同的形式,您不必记得在两个地方更改类名。