保留DropDownList编辑器模板的值

时间:2010-12-19 14:53:26

标签: asp.net-mvc model drop-down-menu selectlist mvc-editor-templates

我认为这是有效的,这很有效,坚持选择的国家:

<%: Html.DropDownListFor(model => model.CountryId, Model.CountryList ,"Select Country") %>

但是,当我为此创建编辑器模板时,所选国家/地区不会保留

所以,我将当前视图更改为:

 <%: Html.EditorFor(model => model.CountryId,new { countries = Model.CountryList}) %>

然后我创建我的编辑器模板:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.Int64?>" %>
<%= Html.DropDownList(
        String.Empty /* */, 
        (SelectList)ViewData["countries"], 
        Model
    )
%>

1 个答案:

答案 0 :(得分:0)

我会尝试这样的事情:

父视图中的代码:

 <% Html.RenderPartial("YourPartialView", Model) %>

编辑器视图中的代码:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ModelFromParent>" %>
<%= Html.DropDownList(
    String.Empty /* */, 
    new SelectList(Model.Countries,"Id", "Title"), 
    "Select Country"
)

%GT;

我没有编译这个。但是你得到了一般的想法。