C# 如何将标志从子窗体传递给父窗体?

C# 如何将标志从子窗体传递给父窗体?,c#,C#,我无法将布尔标志从子窗体传递到父窗体 我知道如何将它从父窗体传递到子窗体,例如: 在主窗体上: Camera settings = new Camera(this.fullPath3); settings.ShowDialog(); Camera settings = new Camera(this.fullPath3,this.flag); settings.ShowDialog(); if (flag==true) text2.text="OK!"; 关于儿童形式: publ

我无法将布尔标志从子窗体传递到父窗体

我知道如何将它从父窗体传递到子窗体,例如:

在主窗体上:

Camera settings = new Camera(this.fullPath3);
settings.ShowDialog();
  Camera settings = new Camera(this.fullPath3,this.flag);
  settings.ShowDialog();
  if (flag==true) text2.text="OK!";
关于儿童形式:

public partial class Camera : Form
    {
        //Zmienne przekazywane - sciezka do zapisu wzorca, 
        string _fullPath3;
 public Camera(string fullPath3, bool flag)

它正在工作。如何添加bool标志,作为我的子窗体的返回

诸如此类:

关于儿童形式:

public partial class Camera : Form
    {
        //Zmienne przekazywane - sciezka do zapisu wzorca, 
        string _fullPath3;
 public Camera(string fullPath3, bool flag)
在主窗体上:

Camera settings = new Camera(this.fullPath3);
settings.ShowDialog();
  Camera settings = new Camera(this.fullPath3,this.flag);
  settings.ShowDialog();
  if (flag==true) text2.text="OK!";

只需在
Camera
表单中实现一个内部或公共属性,并在其中设置该属性

大概是这样的:

  Camera settings = new Camera(this.fullPath3,this.flag);
  settings.ShowDialog();
  if (settings.Flag) text2.text="OK!";

很简单,
Camera
是一个表单,只需向其添加公共属性即可

public class Camera : Form
{
   private string _fullPath3;
   private bool flag;
    public Camera(string fullPath3)
    {

        InitializeComponent();
        _fullPath3 = fullPath3;
    }

    // set flag to something somewhere
    public bool Flag{ get{ return flag; } }

}
现在只需:

Camera settings = new Camera(this.fullPath3);
settings.ShowDialog();
if (settings.Flag) text2.text="OK!";

请记住,
ShowDialog
会停止执行

为什么不在子窗体上创建一个事件,然后在父窗体上挂接该事件呢。您可以像这样将信息传递回父窗体。您可以使用事件。my exampleCamera settings=不带“this.flag”的新相机(this.fullPath3,this.flag)正在工作->相机设置=新相机(this.fullPath3)Tnx;)@是的,我复制了你的代码,应该从ctor中删除。答案已更新。