<SelectListItem>
のテキストをDropDownListと共にあるビューから別のビューに渡す方法を理解できません。私はビューで、次の使用していますDropDownListの<SelectListItem>テキストを別のビューに渡すにはどうすればよいですか?
:私は、ウィザードを使用しています
[Serializable]
public class MyData
{
public int MyProperty{ get; set; }
public IEnumerable<SelectListItem> MyPropertyList{ get; set; }
...
public MyData()
{
var mypropertylist = new List<SelectListItem>() {
new SelectListItem { Text = "(Please select)" },
new SelectListItem { Value = "1", Text="Some text." },
new SelectListItem { Value = "2", Text="Some other text." }
};
this.MyPropertyList = mypropertylist; //Edited
}
}
とで収集されたデータを渡したい:私のViewModelに(のMyData)では
@using (Html.BeginFormAntiForgeryPost())
{
@Html.Hidden("myData", new MvcSerializer().Serialize(Model, SerializationMode.Signed))
...
@Html.DropDownListFor(m => m.MyProperty, new SelectList(Model.MyPropertyList, "Value", "Text"))
...
}
を、私は持っています確認ページまたは私のコードが生成する電子メールへの1つのステップ。
たとえば、ビューで@Html.EditorFor(m => m.FirstName)
を実行すると、@Model.FirstName
を入力することで、その入力を確認画面に渡すことができます。
私は次のことを行うことができるラジオボタンを持っています:@Html.Raw(MyNamespace.ViewModels.MyModel.MyPropertyDictionary.mypropertyDictionary[Model.MyProperty])
データを確認画面に渡します。しかし、私は適切に作成することができません@Html.Raw
(それは私がしなければならないだろうと仮定)のドロップダウン。
ありがとうございます!
UPDATE(コメント要求あたりのコントローラコードを追加するには):
コントローラー:注意すべき
private MyData myData;
....
//
// STEP 1:
// AskUs
public ActionResult AskUsDetails(string nextButton)
{
if ((nextButton != null) && ModelState.IsValid)
return RedirectToAction("AskUsSubmitted");
return View("AskUs/Details", myData);
}
//
// STEP 2:
// AskUs/Submitted
public ActionResult AskUsSubmitted()
{
// Todo: Save myData database; render a "Submitted" view
MyMailer.AskUs(myData).Send();
return View("AskUs/Submitted", myData);
}
もの:
- 直列化部分がコントローラにあります。その関連性があるかどうかは分かりません(もし私が知っていると私は上記のコードの中で編集します)。
- MvcMailerを使用しているので、他に2つのファイルがありますが、関連性があるかどうかわかりません(上記の
MyMailer.AskUs(myData).Send();
部分です)。
UPDATE:私は確認ビューで@Model.MyPropertyList
を行う場合
、私の見解は、私は@Model.MyProperty
を使用している場合は、私は、例えば、
1
を値を取得しています
System.Collections.Generic.List1[System.Web.Mvc.SelectListItem]
示し
私はちょうど実際の "テキスト"をどのように出力するかを理解する必要があります
new SelectListItem { Value = "1", Text="**Some text.**" }
これを行う方法の例は非常に高く評価されます。
私たちはあなたのコントローラのコードを見ることができますを使用することができ、@のModel.MyProperty値に対応するSelectListItemからテキストを表示するには? – sarvesh
@iaimtomisbehaveコントローラーコードを入力するように更新されました。あなたが見る必要があるものがあれば教えてください。大いに感謝します – REMESQ
私のDDLチュートリアルをご覧くださいhttp://www.asp.net/mvc/tutorials/javascript/working-with-the-dropdownlist-box-and-jquery/using-the-dropdownlist-helper-with-aspnet-mvc http://blogs.msdn.com/b/rickandy/archive/2012/01/09/cascasding-dropdownlist-in-asp-net-mvc.aspx – RickAndMSFT