国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

C#中父窗口和子窗口之間實現控件互操作

2024-07-21 02:28:58
字體:
來源:轉載
供稿:網友
  很多人都苦惱于如何在子窗體中操作主窗體上的控件,或者在主窗體中操作子窗體上的控件。相比較而言,后面稍微簡單一些,只要在主窗體中創建子窗體的時候,保留所創建子窗體對象即可。

  下面重點介紹前一種,目前常見的有兩種方法,基本上大同小異:

  第一種,在主窗體類中定義一個靜態成員,來保存當前主窗體對象,例如:

public static yourmainwindow pcurrentwin = null;

  然后在主窗體構造函數中,給靜態成員初始化,如下:

pcurrentwin = this;

  那么在子窗體中調用父窗體,可以通過“主窗體類名. pcurrentwin”來操作當前的主窗體。

  第二種,是在子窗體中定義一個私有成員,來保存當前主窗體對象,例如:

private yourmainwindow pparentwin = null;

  然后在子窗體構造函數中,加一參數,如下:

public yourchildwindow( yourmainwindow winmain )
{
 pparentwin = winmain;
 //other code
}

  在主窗體創建子窗體的時候,要把this作為參數來構造子窗體,這樣在子窗體中調用父窗體,可以直接用“this.pparentwin”就可以了

  不過以上所作的,只是讓你能夠訪問當前主窗體對象,那么如何操作控件,很多人直接修改控件的成員訪問符,即把“private”改為“public”,我覺得這樣破壞了本身類的封裝,所以我比較喜歡的做法是增加公有屬性或方法來供調用,例如:

public string buttontext
{
 get{ return btn.text;}
 set{ btn.text = value;}
}

public void button_click()
{
 this.btndconvert.performclick();//execute button click
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洪江市| 微山县| 迭部县| 胶南市| 建宁县| 清苑县| 金昌市| 开封市| 潞城市| 大英县| 武邑县| 出国| 缙云县| 平湖市| 额尔古纳市| 长岭县| 上犹县| 衡山县| 湖州市| 汉阴县| 仪征市| 大方县| 图木舒克市| 思茅市| 涿鹿县| 南丰县| 周宁县| 合阳县| 连云港市| 新余市| 高碑店市| 太保市| 姚安县| 彭泽县| 彩票| 金平| 衡山县| 应城市| 博乐市| 祁门县| 包头市|