添加一个类似全局变量的东西,从另一个表单中读取它
本文关键字:另一个 表单 读取 一个 全局变量 添加 | 更新日期: 2023-09-27 18:22:28
我想创建一个程序(或者我已经创建了它),希望您在主窗体出现之前输入一个名称。您输入的名称应保存为变量。这并没有那么难,但如果我想从另一种形式中检索它,那是不可能的,该怎么办?
我看了YouTube视频,在谷歌上搜索,但没有找到我需要的东西。我希望你能帮忙。
问候
全局变量是一种代码气味-它们通常不是一个好主意(它们会导致代码变得脆弱、不稳定)。
在您的情况下,如果您有对第二个表单的引用,您可以将数据传递给它——您可以在这个表单上添加一个属性并填充它
// in Form2
public string Name { get; set; }
// in Form1 (frm2 is a reference to Form2)
frm2.Name = theName;
如果数据是第二种形式的整数,那么另一种方法是创建一个将名称作为参数的构造函数重载。
在表单上创建一个公共属性,然后您就可以从任何地方引用它,例如
public string MyProperty{get; set;};
如果您已经编写了表单类,则可以添加一个公共属性,用于设置名称。
public partial class myForm : Form
{
public String EnteredName { get; set; }
public myForm()
{
InitializeComponent();
}
}
然后你可以称之为:
myForm f = new myForm();
f.EnteredName = "My Name";
f.ShowDialog();
这意味着您可以在表单类中执行任何需要执行的操作。
注意:不要调用属性Name,因为它会遮挡窗体的Name属性。