winform 重新整理父窗體

2021-05-02 11:22:19 字數 1545 閱讀 8126

網路上有幾種方法,先總結如下:

呼叫窗體(父):form1,被呼叫窗體(子):form2

方法1: 所有權法

//form1:

//需要有乙個公共的重新整理方法

public void refresh_method()

//在呼叫form2時,要把form2的所有者設為form1

form2 f2 = new form2() ;

f2.owner = this;

f2.showdialog() ;

//form2:

//在需要對其呼叫者(父)重新整理時

form1 f1 ;

f1 = (form1)this.owner;

f1.refresh_method() ;

方法2:自身傳遞法

//form1:

//需要有乙個公共的重新整理方法

public void refresh_method()

form2 f2 = new form2() ;

f2.showdialog(this) ;

//form2:

private form1 p_f1;

public form2(form1 f1)

//重新整理時

p_f1.refresh_method() ;

方法3:屬性法

//form1:

//需要有乙個公共的重新整理方法

public void refresh_method()

//呼叫時

form2 f2 = new form2() ;

f2.p_f1 = this;

f2.show() ;

//form2:

private form1 p_f1;

public form1 p_f1

set

} //重新整理時

p_f1.refresh_method() ;

方法4:委託法

//form1:

//需要有乙個公共的重新整理方法

public void refresh_method()

//呼叫時

form2 f2 = new form2() ;

f2.showupdate += new displayupdate(refresh_method) ;

f2.show() ;

//form2:

//宣告乙個委託

public delegate void displayupdate();

//宣告事件

public event displayupdate showupdate;

//重新整理時,放在需要執行重新整理的事件裡

showupdate();

//子窗體提交後

private void btnok_click(object sender, eventargs e)

//判斷子窗體

if(form.showdialog() == dialogresult.ok)

C Windows Form 重新整理父窗體

第一種方法 用委託,form2和form3是同一組 form2 c using system using system.collections.generic using system.componentmodel using system.data using system.drawing usi...

C 子窗體重新整理父窗體

子窗體 from2 重新整理父窗體 from1 父窗體中有重新整理方法 refersh 1.所有權法 from1中 form2 f2 new form2 f2.owner this f2.show form2中 form1 f1 form1 this.owner f1.refersh 2.自身傳遞法...

當關閉子窗體時重新整理父窗體

彈出子窗體更新他,即當關閉子窗體時重新整理父窗體,function showflow else 當時不知道怎麼做,後來我是這們實現的 在前台頁面鏈結後寫上如下 document.form1.父窗體的按鈕 一般用的是查詢按鈕 click 即 function showflow else 這樣,當我們關...