2017-05-29 6 views
-1

はこれを持っていますレイザー@ Html.DropDownList()はリストから選択した値を取ることはありません<SelectListItem>私のコントローラで選択した値

DropDownList showing...

B:次のようになり、この

@Html.DropDownList("ListaProgramas", (IEnumerable<SelectListItem>)ViewData["ListaProgramas"], new {@class = "form-control pull-left", @id = "ListaProgramas", @style = "color:black; width:100%;" }) 

のような選択した値を設定しないでください。私はこの問題を解決するために何をしますか?

HTMLはこの

<select class="form-control pull-left" id="ListaProgramas" name="ListaProgramas" style="color:black; width:100%;"> 
<option selected="selected" value="1">VIADR</option> 
<option value="2">TweakedBPclient</option> 
</select> 

あるしかし、私のコントローラで私はHTMLレイザー私はコントローラのコードで選択した要素を選択したとして取る見たい

List<SelectListItem> listItems = new List<SelectListItem>(); 
listItems.Add(new SelectListItem 
        { 
         Text = row["ProgramName"].ToString().Trim(), 
         Value = row["Id"].ToString().Trim(), 
         Selected = valor 

        }); 

異なるものを選択しました。あなたは劇中のモデルを持っていないので、あなたはViewDataを介して、この値を渡すことができます -

itemToSelectが適切 row["Id"]ある
new SelectList(ViewData["ListaProgramas"], "Value" , "Text", itemToSelect); 

+0

生成されたHTMLは実際にどのように見えますか? – Brandon

+0

これはこのように見えます。 HTMLは最初のものを選択し、私が選んだものを気にしないでください。

+1

質問を編集して追加してください:) – CodeNotFound

答えて

0

あなたSelectListを作り上げ、代わりにこのフォームを使用しますよくつまり、強く型付けされたビューとヘルパーを使用し、ビューに渡されるモデルの値を設定するだけで、itemToSelectパラメータを指定する必要がなくなります。

+0

本当にありがとうございました。これを行うためにモデルを使用するか、選択した値をViewBag変数で送信します。 –

関連する問題