2011-02-10 23 views
6

我需要模擬一個與在安裝任何軟件期間看到的接口類似的表單。有下一個和後退按鈕,用戶輸入的所有信息僅在他/她單擊完成按鈕時進行處理。
當用戶點擊後退按鈕時,先前輸入的信息會顯示給他/她。
當用戶點擊下一個按鈕時,下一個屏幕顯示給他/她。所有顯示的信息都以一種形式顯示。C#需要關於表單導航的簡單問題的建議

有3個部分,我需要顯示用戶。

  • 第1部分 - 按下下一個按鈕將顯示部2
  • 第2部分 - 按下後退按鈕將顯示部1並按下下一個按鈕將顯示部3
  • 第三節 - 按前一個按鈕將顯示部分2和按完成按鈕將處理在第1,2和3輸入的所有信息

目前計劃實施下列方案:

  1. 創建一種形式
  2. 添加所有的元件爲第1和產生下一個按鈕事件,將隱藏在部分1中所示的所有元件,包括按鈕,顯示所有的元件部分2
  3. 創建按鈕事件對於第2部分的後退按鈕,它隱藏了第2部分中的所有元素,包括按鈕,並顯示了第1部分中的所有元素,下一個按鈕隱藏了第2部分中的所有元素(包括按鈕),並顯示了部分中的所有元素3
  4. 爲第3
創建類似的按鈕事件

有沒有比上面描述的更好的解決方案。如果是,請描述該方法。任何幫助提供將不勝感激。

+1

你在找什麼叫做「嚮導」。您可能能夠找到一些用該關鍵字搜索的優秀教程。 – Justin 2011-02-10 14:02:55

+0

如果這是一個Web應用程序(無法從您的問題中得知),那麼標準Web控件庫中會有一個嚮導控件,它將完全按照您的需要進行操作。 – 2011-02-10 14:10:58

+0

我正在做一個桌面應用程序。謝謝賈斯汀,嚮導正是我想要的。謝謝你的幫助。 – abduls85 2011-02-10 14:18:50

回答

2

一種方式實現這一目標是使用標籤控件和隱藏的選項卡,使用戶可以在它們之間無法瀏覽,而是你控制一個移動選項卡以編程方式進行下一步。

我使用KryptonNavigator控件,因爲它提供了許多不同的模式,使得隱藏標籤變得很簡單,因此只有標籤內容可見等。但是,應該可以隱藏標準標籤控件的標籤。

KryptonNavigator

0

您可以爲三個不同的屏幕創建自定義控件,然後您可以將這3個控件添加到窗體中,從而更容易隱藏/顯示適當的控件。

或者,您可以創建三個單獨的表單,然後按順序顯示錶單並在程序Main()函數中執行操作,而不是使用表單作爲啓動對象。像

static void Main() 
{ 
    Form1 f1 = new Form1(); 
    if (f1.ShowDialog() == DialogResult.OK) 
    { 
    // do actions 
    // show next form 
    // etc. 
    } 
} 
0

您可以使用usercontrol結構來實現這種行爲。您可以添加一個簡單的面板控件,並根據按下的按鈕更改面板的內容。您只需使用yourPanel.Controls.Add(your_user_control)即可更改面板的內容。因此,不同的控制集可以在Winform上實現。

謝謝

0

是啊,像伊恩說,嚮導控制可能是你最好的選擇,但如果不工作,嘗試尋找多視圖或手風琴控制。他們製作專門用於在表單上隱藏/顯示部分的控件,因此您無需從表單轉換爲表單,因此您始終保持在同一個範圍內。使填充字段變得容易很多。