ASP.Net MVC 2,0 EditorForModel Вопрос - PullRequest
2 голосов
/ 01 июля 2010

Я написал метод расширения Enum, который позволяет мне создавать модель представления и позволяет мне легко привязать общий Enum к SelctList, например:

this.ProductStatusList = new ProductStatusTypes().BindToSelectList<ProductStatusTypes>  
(product.Status.ToString());

В моем представлении я могу иметь:1004 *

<% using (Html.BeginForm()) {%>               
    <fieldset>
        <legend>Fields</legend>

        <%= Html.EditorForModel() %>                  
        <%=Html.DropDownListFor(p => p.ProductStatusList, new 
                                SelectList(Model.ProductStatusList, "Value", "Text",   
                                Model.Status.ToString()))%>               
        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>
<% } %>

Обратите внимание, я использую EditorForModel, а затем отдельный DropDownList.

Мой вопрос таков: есть ли способ заставить EditorForModel быть достаточно умным, чтобы понять, что я хочу использовать SelectList вместо TextBox для статуса?

Ted

1 Ответ

1 голос
/ 09 января 2011

EditorForModel обращает внимание на атрибут UIHint в ваших свойствах.Он проверит, есть ли у вас шаблон редактора для этой подсказки пользовательского интерфейса, и попытается использовать его для своей формы.

...