C# 在WinForms之间传递数据时遇到问题

C# 在WinForms之间传递数据时遇到问题,c#,winforms,C#,Winforms,好的,我设置了一个表单,从.dll加载一个附加表单,为了增加安全性,我希望.dll读取初始表单中bool的状态,本质上是 MainForm启动SecondForm(位于.dll中) SecondForm从MainForm读取bool的状态并相应地执行操作 我想我可以用这样的东西 ((从“第二种形式”剪下) 但这就是我能做到的。我不知道如何引用“SecondForm”上“MainForm”的bool,扔掉所有反射内容,只需在SecondForm的构造函数中将布尔值从MainForm传递到Secon

好的,我设置了一个表单,从.dll加载一个附加表单,为了增加安全性,我希望.dll读取初始表单中bool的状态,本质上是

MainForm启动SecondForm(位于.dll中)

SecondForm从MainForm读取bool的状态并相应地执行操作

我想我可以用这样的东西 ((从“第二种形式”剪下)


但这就是我能做到的。我不知道如何引用“SecondForm”上“MainForm”的bool,扔掉所有反射内容,只需在
SecondForm
的构造函数中将布尔值从
MainForm
传递到
SecondForm
。您在示例代码中所做的是创建一个全新的
MainForm
实例,这不是您想要做的,也没有任何意义。

扔掉所有反射内容,只需将布尔值从
MainForm
传递到
SecondForm
的构造函数中的
SecondForm
。您在示例代码中所做的是创建一个全新的
MainForm
实例,这不是您想要做的,也没有任何意义。

或者如果您想从MainForm访问任何其他属性,您可以实现SecondForm的构造函数,如下所示:

public SecondForm(Form theMainForm)
{
    var booleanValue = theMainForm.Value;
}

或者,如果您想从MainForm访问任何其他属性,可以实现SecondForm的构造函数,如下所示:

public SecondForm(Form theMainForm)
{
    var booleanValue = theMainForm.Value;
}

当MinForm创建第二个表单实例时,为什么不将bool传递给第二个表单实例呢?这不需要使用反射。因为mainform正在启动SecondForm,所以只需传递值。为什么不在MinForm创建第二个表单实例时将bool传递给第二个表单实例呢?这不需要使用反射。因为mainform正在启动SecondForm,所以只需传递值。