アイデアは、私はフォームのセットを持っている、ユーザーは "前方"と "戻る"ボタンをクリックし、現在のフォームが別のものに変更されるということです。私の問題は、私は新しいフォームをポップアップするコードを書くことができますが、現在のフォームの "置き換え"を行う方法はわかりません。これは通常どのように行われますか?vb.netを使用して「ウィザード」スタイルを作成するにはどうすればよいですか?
答えて
私が最近したのは、すでにボタンが配置されたフォームと各ステップを含む大きなパネルを作成することでした。このダイアログは、IWizStepインスタンスの形式で初期ステップを受け入れ、そこからロールバックされます。
各ステップは、ロジック自体がクラスによって処理されている間に、ステップの視覚的な側面を担当するUserControlを公開するクラスでした(これはもう少し複雑でしたが、一般的な考えでした)。
IWizStepインターフェイス、ステップによって実装され、ダイアログによって受け入れられたが、の行にあった:一緒にすべてを置くために
Interface IWizStep
Event StateChanged As EventHandler
ReadOnly Property Control As Control
ReadOnly Property Title As String
ReadOnly Property CanMovePrevious As Boolean
ReadOnly Property CanMoveNext As Boolean
Function MovePrevious As IWizStep
Function MoveNext As IWizStep
End Interface
、コントローラクラスは、与えられたそれぞれのために必要なステップを構成する方法を知っているだろうアクション。したがって、私は、いくつかの10ステップを必要とする「Emit Order」と、2ステップしか必要としなかった「Emit Orders in Batch」のコントローラーを用意しました。
UserControlsのセットを作成し、Panelから単一のフォームに追加して削除します。 (そして、Dock
をFill
に設定する)
「ウィザード」として機能するユーザーコントロールを定義できます。あなたが持っているボタンとコンテンツパネルの配列が必要です。パネル上のコントロール内で一定の条件が満たされていることを前提に、ボタンを押したときにパネルを切り替えるだけです。独自のウィザードを実行するのはかなり簡単なので、実際の決定的な "ウィザード"メーカーはありません。
現在のフォームの「置き換え」を行う必要はありません。新しいものをプロジェクトに追加するだけで済みます。何らかの理由で必要がある場合は、Me.Controls
でコントロールコレクションを取得して、それをどこかにコピーし、新しいコントロールを上に置きます。ウィザードが不要な場合は、再度スワップしてください。しかし、新しいフォームを作成するのが一般的にベストプラクティスです!
- 1. 戻るボタンをサポートしたASP.NET MVCウィザードを作成するにはどうすればよいですか?
- 2. Visual Studioで使用されているようなデータベース接続ウィザードを再作成するにはどうすればよいですか?
- 3. wpfでdatavalidationを使用してカスタム動作を作成するにはどうすればよいですか?
- 4. jQueryを使用してRaphael.jsオブジェクトにCSSスタイルを適用するにはどうすればよいですか?
- 5. Objective-Cを使用して新しいNSWindowを作成するにはどうすればよいですか?
- 6. WinAPIを使用して「はい」ボタンを作成するにはどうすればよいですか?
- 7. 継承を使用して汎用クラスを作成するにはどうすればよいですか?
- 8. NAntにVB.Net用の自動ビルドファイルを作成するにはどうすればよいですか?
- 9. jQueryを使用してスクロールするメニューセレクタを作成するにはどうすればよいですか?
- 10. 古いJSESSIONIDを使用してHttpSessionを作成するにはどうすればよいですか?
- 11. ビットコードオプションを使用して太いフレームワークを作成するにはどうすればよいですか?
- 12. VB.netを使用してExcelでセルA3を選択するにはどうすればよいですか?
- 13. VB.NETを使用して別のコンピュータでバッチファイルを実行するにはどうすればよいですか?
- 14. VB.NETを使用してMySQLデータベースに画像を保存するにはどうすればよいですか?
- 15. APIを使用してカスタマイズしたbit.ly URLを作成するにはどうすればよいですか?
- 16. VBScriptを使用して作成したテキストファイルを表示するにはどうすればよいですか?
- 17. Asp.netウィザードFinishButtonClickイベントをキャンセルするにはどうすればよいですか?
- 18. igraphパッケージを使用してデータフレームからグラフを作成するにはどうすればよいですか?
- 19. WPFでボタンを使用してTextBoxを作成するにはどうすればよいですか?
- 20. WSDLファイルを使用して.NETでプロキシクラスを作成するにはどうすればよいですか?
- 21. 小文字でoracleを使用してテーブルを作成するにはどうすればよいですか?
- 22. Lionを使用してプログラムでNSWindowフルスクリーンを作成するにはどうすればよいですか?
- 23. Apache ApexでJSONを使用してDAGを作成するにはどうすればよいですか?
- 24. jQueryを使用してSmooth Animated Menuでアウトワードリンクを作成するにはどうすればよいですか?
- 25. アクセシレータを使用してWPFでカスタムMenuHeadersを作成するにはどうすればよいですか?
- 26. iOS端末でKMLを使用してトラッキングマップを作成するにはどうすればよいですか?
- 27. モノラルでOpenALを使用してオーディオコンテキストを作成するにはどうすればよいですか?
- 28. データセットでJavascriptを使用してJSONを作成するにはどうすればよいですか?
- 29. Pythonでctypesを使用してコールバック関数を作成するにはどうすればよいですか?
- 30. Razorを使用してASP.NET MVC3でタブビューを作成するにはどうすればよいですか?
winforms? wpf?生のgdi?ウェブフォーム? mvc? –
ちょうど普通のwinforms。 – telaviv