我有两个课程:FrmMenu
和FrmProperty
。在FrmProperty
我创建了一个这样的属性:
public string ApplicationString { get; set; }
form1_load(object sender, EventArgs e)
{
MessageBox.Show(ApplicationString);
}
然后,我在FrmMenu
中实例化该类,如下所示:
FrmProperty frmp = new FrmProperty();
//Give value
frmp.ApplicationString = "1";
frmp.ShowDialog();
此代码应将值从FrmMenu
传输到FrmProperty
。为什么这不起作用? MessageBox是空白的。
答案 0 :(得分:0)
所以,我自己尝试了这个,首先要注意的是你提供的代码不能编译。你的例子有:
form1_load(object sender, EventArgs e)
{
MessageBox.Show(ApplicationString);
}
但这样写得更好:
private void FrmProperty_Load(object sender, EventArgs e)
{
MessageBox.Show(ApplicationString);
}
也许这是自我解释,但我发现确保一切尽可能清晰总是有帮助的。
就您的问题而言,我唯一能想到的就是如果您没有将FrmProperty_Load
方法连接到{{1的Load事件}}
FrmProperty
方法除非有问题,否则不会运行,因此在FrmProperty_Load
的构造函数中添加以下内容:
FrmProperty
您的this.Load += FrmProperty_Load;
课程应保持不变,而您的FrmMenu
课程应大致如下:
FrmProperty