簡體   English   中英

如何將bool變量從form2傳遞回form1?

[英]How do I pass a bool variable from form2 back to form1?

我正在嘗試從表格2傳遞布爾變量並將其放入表格1。您將如何做?

1,按實例參數

  bool flg = false;
  form1 f1 = new form1(flg);
  f1.show();

2,靠公共財產。

  form1 f1 = new form1();
  f1.FLG = false;
  f1.show();

3,通過公開設置方法

  form1 f1 = new form1();
  f1.SetFlg(false);
  f1.show();

您需要編寫公共property/method以在表單之間返回(交換)數據。 首先,您需要了解-如何從另一個類的對象的方法/屬性訪問一個類的對象的屬性/方法?

例如,在Form2類中創建一個名為Status的公共屬性,

public partial class Form2
{
  ...
  private bool _status; 
  public bool Status
   {
    get
     {
      return _status;
     }
    set
    {
      _status=value;
     }
   }
  ....
}

現在,如果要從Form1方法中獲取Status屬性的值。

public partial class Form1
{
   ....
   protected void Button1_Click(object sender, EventArgs e)
   {
    Form2 frm=new Form2();
    frm.ShowDialog();
    bool status=frm.Status;
   }
}

嘗試這個 :

表格1:

//Create global variable
public bool test;
//Initialize the form
Form2 f2 = new Form2(this);
f2.ShowDialog();

表格2:

Form1 originalForm;
public Form2(Form1 incomingForm)
{
    originalForm = incomingForm;
    InitializeComponent();
}

設置或獲取如下內容: originalForm.test

希望能奏效

我會使用一個界面。

 public interface IForm
 {
    bool GetResult();
 }
 // form 2
 public partial class Form2 : Form, IForm (...)
 private bool Result;
 public bool GetResult()
 {
  return Result;
 }

 // form 1
 var form2 = new Form2();
 ((IForm)form2).GetResult();
//In Form1 define global static bool variable
Form1
{ 

public static bool variable;

}

// In Form2 call it
Form2
{
   Form1.variable = true;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM