あなたがその探しているキーワードは、あなたの問題はXNAのウェブサイトはそれにいくつかの良い記事が掲載されています、この1必ずお読みください「ゲームの状態管理」で説明しています。もっと直接あなたの質問に答えるために今http://create.msdn.com/en-US/education/catalog/sample/game_state_management
を。 は、まずセットアップ引き分けに法と国家というクラスを作成し、正しいUI要素を更新 - ゲーム
-menu あなたは2つの異なる状態を持っていると言います。
Stateから派生したMenuStateを作成し、設定、描画、更新メソッドをオーバーライドします。セットアップメソッドでは、正しいメニューを生成するためにすべてのコードを配置します。 (Like Scene.MenuItems.Clear(); Scene.MenuItems.Add(新しいラベル(..));など)。更新と描画のメソッドを同じにします(各コントロールの更新と描画、ボタンのクリックによるイベントのキャプチャなど)
GameStateで同じ操作を行います。
シーンコードでは、「状態状態」のフィールドを作成します。ユーザがエスケープセット状態を(新しい)MenuStateに押したとき。ユーザーが(新しい)GameStateにゲームセットの状態に戻るとき。シーンの更新と描画のメソッドでstate.Update(..)とstate.Draw(..)を呼び出します。 GameStateとMenuStateでこれらのメソッドをオーバーライドしたので、正しいアクションが実行されます。
このアプローチでは、 "if(scene.StateEnum == StateEnum.SomeState){DoThis();}"のようなチェックを行う盛大なコントロールを持つという問題を解決しています。この方法で簡単に管理できます。
他の概念クラスを作成することも考えてください。 MenuStateのように、 "Options menu"というサブ状態を持つことができます。多分、フォームクラスなどを考えてみてください。