首先需要在項目文件上添加一個Windows窗體,用於後面的衍射子窗體,之後在主窗體上添加一系列控件,比如Button控件—命名爲“顯示子窗體”等等。共有五個控件,需要注意的是控件的命名和文本修改,因爲後面需要用到“名字”,便於尋找和他人閱讀。“顯示子窗體”控件用於顯示子窗體,之所以在實例化對象的時候寫入this,是爲了將主窗體傳遞給子窗體,方便後面子窗體控制主窗體的背景圖片:“sf = new SubForm(this);”,“圖片地址”控件只是提示作用,但是命名也必須規範。文本框控件是第一種選擇圖片的方式,用戶手動寫入圖片的地址。“選擇圖片”控件是利用OpenFileDialog來選擇圖片。但都需要最後一個控件“確認修改主窗體地址”的txtAddressBase.Text = ofd.FileName這一事件來修改圖片。
反過來,子窗體如何控制主窗體的背景圖片,剛纔主窗體可以修改子窗體的背景圖片,是因爲在主窗體中有子窗體的引用"mf",反過來的話,就需要將主窗體的引用傳給子窗體,利用:“sf = new SubForm(this);”,再在子窗體的代碼段中加一個構造方法,只需在原構造方法的基礎上加上this.formnew = formnew;這樣就跟主窗體傳圖片地址給子窗體一樣的原理,在確認修改圖片就OK了。
附上代碼窗體傳值練習
備註:寫於2013年2月28日