2010-04-08 91 views
0

我正在創建一個具有類似安裝程序的界面的程序。用ShowDialog方法Form類或者做一個MDI接口是否更好?下面是我嘗試使用ShowDialog方法來做到這一點的方式,和我與他們的問題:創建UI問題

1)第一種形式ShowInTaskbar屬性設置爲true,其他方式被設定爲false。表格按.ShowDialog()方法顯示,按鈕"Next>"點擊事件,點擊事件"<Back"按鈕調用.Close()方法。在這種情況下,表單以模式模式出現,這對我來說是不好的體驗。

2)所有表格都有ShowInTaskbar屬性設置爲true;通過.ShowDialog()方法顯示的表單響應按鈕"Next>"(相同的事件處理程序設置爲.Visible=false以隱藏表單)的點擊事件;點擊事件"<Back"按鈕調用.Close()方法。在這種情況下,當按下NextBack時,在任務欄中可以看到關閉並打開一個新窗口。

回答

1

通常,嚮導型接口通過在一個窗口(Form)上實現,並在Next/Back按鈕按下時替換其內容。

當你使用Visual C++標記你的問題時,會提示MFC,ATL/WTL或Win32,但你也用.Net和你提及的方法和屬性建議WinForms。

如果您正在使用的WinForms,最簡單的方法是創建一個包含您目前對不同形式的控制組和只顯示/隱藏Panel取決於正確的哪個按鈕是你的窗體上幾個Panel實例按下,什麼是以前可見Panel

另一種方法是將TabControl與隱藏的標籤按鈕一起使用,只需按下按鈕即可更改所選標籤。

博客文章提供了generic wizard control的一些示例實現。

Social.msdn.com上的一箇舊線程討論wizard dialog problem及其各種方法,以及一些更實用的更多實用鏈接。

如果您有組件的預算並希望節省一些時間和精力,DevExpress將擁有商業Wizard控件。