如何将flag从子窗体传递到父窗体

本文关键字:窗体 flag | 更新日期: 2023-09-27 18:06:26

我有问题传递布尔标志从childform到parentform。

我知道如何将它从parentform传递给childform,例如:

在mainform

:

Camera settings = new Camera(this.fullPath3);
settings.ShowDialog();
在childform

:

public partial class Camera : Form
    {
        //Zmienne przekazywane - sciezka do zapisu wzorca, 
        string _fullPath3;

  public Camera(string fullPath3)
    {
        InitializeComponent();
        _fullPath3 = fullPath3;

,它正在工作。如何添加一个bool标志,从我的孩子形式返回?

像这样:

在childform

:

 public Camera(string fullPath3, bool flag)
在mainform

:

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

如何将flag从子窗体传递到父窗体

简单,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停止执行!

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

像这样:

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