2010-05-19 3 views
0

내 모델을 편집하고 만드는 데 사용할 부분보기가 있습니다. 사용자가 모델을 편집 할 때 특정 드롭 다운을 텍스트로 렌더링하고 싶습니다. 변경하지 않기를 바랍니다. 읽기 전용 드롭 다운으로 충분하지만 텍스트를 선호합니다.ASP.NET MVC의 특정 동작에 대한 텍스트로 렌더링 드롭 다운

확장 메서드를 통해이 작업을 수행 할 수 있다고 생각하지만 시작하는 방법을 잘 모르겠습니다. 어떤 도움을 주시면 감사하겠습니다!

+0

당신은 사용자가 드롭 다운 목록을 할 수 하시겠습니까, 또는 현재 선택된 디스플레이 값을 뷰에 표시하기를 원합니까? –

+0

후자입니다. 아래 내 대답을 참조하십시오. – Dan

답변

0

가 여기에 내가 뭘하려합니다 (그리고 작동) - 나는/다른 내보기 :)에 있는지의 팬이 아니에요하지만

<% if (ViewContext.Controller.ValueProvider.GetValue("action").RawValue.Equals("Edit")) 
     { %> 
    <span><%= Event.Retailer.Name%></span> 
    <%= Html.Hidden("Retailer", Event.Retailer.Id) %> 
    <%} 
     else 
     { %> 
    <%=Html.DropDownList("Retailer", Model.Retailers, "Select", new { @class = "field select large required" })%> 
    <%= Html.ValidationMessage("Retailer", "*")%> 
    <%} %> 
+0

아, 당신이 지금하고있는 것을 봅니다. 레코드의 생성과 편집에 같은 뷰를 사용하고있는 경우, 뷰의 상태를 변경하는 방법이 필요하기 때문에,'if' 문은 불가피합니다. * 일반적으로,'create'와' 편집 '. –

+0

예 - 어딘가에 "if"문이 필요한 경우 도우미를 사용합니다. 나는 할 수 있었다 Html.Retailer (..) 나는 가정한다. 'create'와'edit'에 대해 다른 뷰를 사용 하겠지만, 폼이 너무 비슷해서 그룹화 할 수있었습니다. – Dan

관련 문제