2009-04-09 126 views
3

與ASP.NET中的主窗體頁面一樣,我們是否也有類似的Windows窗體應用程序概念。這樣我就不必在應用程序中多次重複表單的相同部分(頁眉和頁腳)。Windows窗體中的主窗體

回答

1

不是真的一樣的母版頁,但你可以創建一個控件(例如基於UserControl)與頁眉和頁腳,由於需要所有的其他形式可以繼承(或建造)。

9

是的。

,你所要做的就是創建你的「主人」的形式,加入你想要的所有用戶界面,默認的按鈕等

類的東西按鈕,我通常創建處理Click方法事件稱爲「虛擬」,以便我可以以當時構建的實際形式實施它們。

一旦構建了「主」表單,您需要做的是右鍵單擊該項目並選擇「新建項目」。一旦你完成了,如果你在VS.Net 2008中,你可以點擊「Windows窗體」類別,然後選擇「繼承的表單」。

一旦你這樣做了,你會被要求從項目中的哪個表單繼承。只需選擇「主」形式,並且應該設置。

7

將主窗體創建爲帶頁眉和頁腳的窗體,但將中間留空。

使用通用接口實現「內部頁面」爲UserControl,並根據需要更改它們。 (標題,內容面板和頁腳是Windows.Form.Panel)。

------------------------------- 
| Header      | 
-------------------------------   ______________ 
|        |   |   | 
|   ContentPanel  | <---- | MonkeyEdit | 
|        |   |____________| 
------------------------------- 
| Footer      | 
------------------------------- 

並實行內容

public class MonkeyEdit : UserControl, IContent 
{ 

} 

實現它有用,但不是neccessary的接口。之後,根據事件/配置,只需使用Dock.Fill將MonkeyEdit裝入ContentPanel即可。你也可以接受「主表格」,就像你在另一篇文章中看到的那樣。

0

你可以通過繼承來實現類似的東西;您可以使用重複的控件創建一些父窗體,然後將此父窗體用於您需要的每個自定義窗體。

0

添加一個繼承自Form的類,添加頁眉和頁腳(在代碼中),然後讓所有新的表單繼承此類。

0

母版頁有能力指定將嵌入頁面的內容區域。因此,從表格A中獲取表格B並獲取父表格的特徵並不能證明這一點。 Boj提到的更有意義,我們在哪裏使用面板。