2016-06-24 2 views
1

MVC4のカミソリアプリケーションで@Html.DropDownListを使用すると、ViewBag を使用して選択リストが提供されますが、そのドロップダウンにデフォルト値を設定する方法はありません。そのためデフォルト値をmvc4のドロップダウンリストに表示

@Html.DropDownListFor(m => m.SlpCode, new SelectList(ViewBag.SalesEmployee1, "Value", "Description"), new { @class = "form-control" }) 

私は

@Html.DropDownListFor(m => m.SlpCode, new SelectList(ViewBag.SalesEmployee1, "Value", "Description", (Model.SlpCode==-1)), new { @class = "form-control" }) 

を試みたのですが、まだそれが仕事ではありません。 それにはもう一つの解決策はありますか?

+0

あなたが設定する必要があります前のコントローラの 'SlpCode'の値モデルをビューに渡します。オプション値( 'SalesEmployee1'の' Value'プロパティ)のどれかと一致する場合、そのオプションが選択されます。 –

+0

これを試しています。これはうまくいきます。提案ありがとう。 – Anuja

+0

'' ViewModel.SlpCode = "DefaultValue" 'を使用して、コントローラの' GET'メソッドでビューを返す前にDDListのデフォルト値を設定するだけで、ビューモデルがあると仮定します。 –

答えて

1

これは私がドロップダウンリスト

コントローラコード

 public ActionResult Contact() 
    { 
     Contact homeViewModel = new Contact(); 
     homeViewModel.subject = new List<Subject>(); 
     homeViewModel.subject.Add(new Subject { Id = 1, subject1 = "General Customer Service" }); 
     homeViewModel.subject.Add(new Subject { Id = 2, subject1 = "Suggestions" }); 
     homeViewModel.subject.Add(new Subject { Id = 3, subject1 = "Product Support" }); 

     homeViewModel.Selectedid = 1; //this sets the default value for your dropdown 

     return View(homeViewModel); 
    } 

モデルのコードのためにやっているものです:

public class Contact 
{ [Required(ErrorMessage="Please fill the following")] 
    public string name { get; set; } 

    [Required(ErrorMessage = "Please Enter Correct Username")] 
    [RegularExpression(@"^([0-9a-zA-Z]([\+\-_\.][0-9a-zA-Z]+)*)[email protected](([0-9a-zA-Z][-\w]*[0-9a-zA-Z]*\.)+[a-zA-Z0-9]{2,3})$", ErrorMessage = "Please provide valid email id")] 
    public string email { get; set; } 
    public List<Subject> subject { get; set; } 
    [Required(ErrorMessage="Please fill the following")] 
    public string message { get; set; } 
    public int Selectedid { get; set; } 
} 

コードの表示:

@Html.DropDownList("Selectedid", new SelectList(Model.subject, "Id", "subject1", Model.Selectedid), new { @class = "form-control", id = "subject", required = "required" }) 
関連する問題