Crud com DropDownListFor

31/03/2016

Bom dia Galera.

Eu sou programador WindowsForms, estou apanhando muito com a parte web,

            <div class="form-group">
                @Html.LabelFor(model => model.STAT, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.STAT, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.STAT, "", new { @class = "text-danger" })
                </div>
            </div>


eu preciso mudar esse EditorFor para um DropDownListFor, apenas três itens , alguem consegue me ajudar?

eu tentei fazer dessa forma.

No Controller
     public class ListTpStat
        {
            public int TpStatId { get; set; }
            public string TpStatNome { get; set; }

            public List<ListTpStat> ListaStat()
            {
                return new List<ListTpStat>
            {
                new ListTpStat { TpStatId = 1, TpStatNome = "XML"},
                new ListTpStat { TpStatId = 2, TpStatNome = "TXT"},
            };
            }
        }


e na view ficou assim:
   @*<div class="editor-field">
                @Html.DropDownList("ListStatId", String.Empty)
                @Html.ValidationMessageFor(Model => Model.STAT)
            </div>*@


Alguem consegue me ajudar como fazer para isso funcionar??

Carlos Junior

Respostas

01/04/2016

Randrade

Você pode fazer isso de várias formas, mas na View ficaria asism:

	@Html.DropDownListFor(model => model.TpStatId , new SelectList(Items, "Value", "Text")) 


Lembrando que o TpStatId é o valor da propriedade onde quer que salve o item selecionado.

Olhe um exemplo completo no DotNetFiddle.

Eu pessoalmente aconselho esta abordagem aqui.
Responder Citar