如何从另一个类赋予属性值

时间:2013-10-21 15:12:37

标签: c# winforms

我有两个课程:FrmMenuFrmProperty。在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是空白的。

1 个答案:

答案 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