1

情報を表示する 1 つのメイン パネルと、メイン パネルで発生した内容に基づいていくつかのパネルの 1 つを表示できるサイド パネルを含む Web ページ レイアウトがあります。たとえば、メイン パネルにプロジェクトのリストを表示し、編集パネルを表示するプロジェクトをクリックすることができます。または、削除パネルを表示するプロジェクトを削除できます。5~6枚くらいのパネルです。これはアプリケーション全体ではないため、メイン パネルを部分的に表示することはできません。

これをどのように実装しますか?基本的に、コントローラーで 2 つのビューを返そうとしていますが、明らかにそれは不可能です。私の推測では、メイン パネルはコントローラーによって返されるビューである必要があります。しかし、どうすればサイドパネルを設定できますか? どうにかして、2 つのビューを 1 つのコントローラー アクション内で 1 つに結合できますか? または、2 つのコントローラーを 1 つのアクションにリンクする必要がありますか? どうすればいいですか?

私は ASP.NET MVC を初めて使用しますが、自分で答えを探すのに苦労しています。お待ちいただいてありがとうございます。

4

2 に答える 2

0

@AlexCが述べたように、データに関しては、さまざまなパネルのデータを含む単一のビューモデルオブジェクトを渡すことを使用します。

UI に関しては、タブ jquery プラグインを使用して、ここに示すようにさまざまなパネルをレンダリングできます - http://jquerytools.org/demos/tabs/index.html

于 2012-04-02T08:33:34.880 に答える
0

この場合、ViewModel を使用して複数のドメイン モデルを収集し、ここで説明されているようにそれらをビューに渡すことができます(これが私が行うことです)。同様に、メイン パネル オブジェクトを厳密に型指定されたオブジェクトとして渡し、ViewData を使用して他のデータ項目を渡すこともできます。次に、個々のパネルに個別の部分ビューを使用し、次を使用してデータを渡すことでそれらをレンダリングできます

@{ Html.RenderPartial("ViewName", dataItem); }
于 2012-04-01T12:44:59.743 に答える