2011-02-10 8 views
6

ソフトウェアのインストール時に見られるインターフェイスに似たフォームをシミュレートする必要があります。次と戻るボタンがあり、ユーザーが入力したすべての情報は、完了ボタンをクリックしたときにのみ処理されます。
ユーザーが戻るボタンをクリックすると、前に入力した情報が表示されます。
ユーザーが次のボタンをクリックすると、次の画面が表示されます。表示されるすべての情報は1つの形式で表示されます。C#はフォームナビゲーションの簡単な問題についてアドバイスが必要

私はユーザーに必要な3つのセクションがあります。

  • セクション1 - セクションに表示され、次のボタンを押す2
  • 第2 - セクションに表示される次のボタンをセクション1を示すであろうバックボタンを押して押圧3
  • セクション3 - 前のボタンを押します

    :セクション2に表示され、完了ボタンを押すと、セクション1,2および3に入力されたすべての情報を処理します

は現在、下記のソリューションを実装することを計画します10

  1. ボタンイベントを作成
  2. 部1のためのすべての要素を追加し、2
  3. のボタンを含むセクション1に示すすべての要素を隠し、すべての要素の部分が表示され、次のボタンイベントを作成する一の形態を作成ボタンを含むセクション2のすべての要素を隠し、セクション1のすべての要素を表示し、ボタンを含むセクション2のすべての要素を非表示にし、セクションのすべての要素を表示するように、セクション2の戻るボタン用3
  4. セクション3の同様のボタンイベントを作成

上記よりも優れた解決策がありますか?はいの場合は、その方法を説明してください。提供されたヘルプは非常に高く評価されます。

+1

探しているものを「ウィザード」といいます。あなたは、そのキーワードで検索する良いチュートリアルを見つけることができるかもしれません。 – Justin

+0

これはWebアプリケーション(あなたの質問から分かりません)の場合、標準のWebコントロールライブラリにウィザードコントロールがあり、あなたが望むものを正確に実行できます。 –

+0

私はデスクトップアプリケーションをやっています。ありがとう、Justin、ウィザードはまさに私が望むものです。ご協力いただきありがとうございます。 – abduls85

答えて

2

ユーザーがそれらの間を移動することはできませんし、代わりに使用すると、1つの移動を制御するように、これは、タブコントロールを使用して、タブを隠して達成する一つの方法をタブをプログラム的に次のタブに移動します。

私はKryptonNavigatorコントロールを使用しています。これは、タブの内容だけが表示されるようにタブを非表示にするためのさまざまなモードを提供しています。しかし、標準タブコントロールのタブを非表示にすることは可能です。

KryptonNavigator

+0

これまでこれを使ってきました。私はどのウィザードコントロールも使用していません。これについての素晴らしい点は、デザイナーのタブごとのコントロールを簡単に切り離すことができることです。素晴らしいシンプルなソリューション。 – jrsconfitto

0

3つの異なる画面用のカスタムコントロールを作成し、3つのコントロールをフォームに追加するだけで、適切なコントロールを非表示にすることができます。

また、起動オブジェクトとしてフォームを使用するのではなく、フォームを順番に表示して、プログラムMain()の機能でアクションを実行することもできます。 Like

+1

ユーザが戻るボタンを押した場合どうしたら...そのような状況でダイアログ結果を処理する必要があり、煩雑になる可能性があります...代わりに、ウィザードコントロール/タブコントロールが便利です。 –

0

このような動作を実現するには、usercontrol構造を使用できます。簡単なパネルコントロールを追加し、押されたボタンに従ってパネルの内容を変更することができます。 yourPanel.Controls.Add(your_user_control)を使用すると、パネルの内容を変更することができます。 異なるコントロールセットをwinformに実装できるようになりました。

ありがとうございました

0

うん、イアンのようなウィザードコントロールは、おそらくあなたの最善の策であるが、それが動作しない場合は、マルチビューやアコーディオンのコントロールを探してみてください、と述べました。彼らは、フォームのセクションを隠す/表示するためのコントロールを作成するので、フォームからフォームに移動する必要がないため、常に同じスコープにとどまります。フィールドに多くのフィールドを簡単に埋め込むようにします。

関連する問題