2012-03-09 2 views
1

좋아요, 여기 거래가 있습니다. C#의 System.Linq.Expressions.Expression에서 사용자 지정 드롭 다운 상자를 만들 수 있기를 원합니다. DropDownListFor과 같은 도우미가 있다는 것을 알고 있지만 처음부터 만드는 방법이나 표현식에서 값을 가져 오는 방법을 모르겠습니다. 당신은 그것이 value의 기반으로 <option>를 '선택'할 DropDownListFor를 사용하는 경우C# mvc 표현을 html로

는 기본적으로 내가 왜이 일을 해요,하지만 난 그것을 대신 텍스트의에 따라 옵션을 '선택'할. 그래서 누군가가 그 대신에 그것을하는 방법을 가지고 있다면 그것은 좋을 것입니다.

은 지금까지 내가 DropDownListFor<option> 선택하거나 ExpressionSelectList 크게 될 것이다 기반으로 내 자신의 HTML 요소를 만드는 방법을 만들 수 있습니다 방법에 대한 아이디어

public static MvcHtmlString ValidatedEditableDropDownListFor<TModel,TProperty>(
     this HtmlHelper<TModel> htmlHelper, 
     Expression<Func<TModel, TProperty>> expression, 
     SelectList list, 
     String defaultOption, 
     Object attribs) 
{ 
    //Basically puts the strings into a html template<div>{0}{1}</div> etc. 
    return GetValidatedHtml(
     htmlHelper.LabelFor(expression).ToString() , 
     htmlHelper.DropDownListFor(expression , list , defaultOption , attribs).ToString() 
     ,htmlHelper.GetValidatedErrorMessage(expression),false,"EditableDropDown"); 
} 

가지고있는 본질적 고맙습니다.

감사합니다. 내 양식이 하나 개의보기 때문에

답변

0

왜 선택한 올바른으로보기에 SelectedListItems의 목록을 통과하지는 컨트롤러

+0

의 텍스트, 그리고 내가보기에 다시 모델을 통과 ... 그렇게하기 나는 기본적으로 뷰를 복제하고, 특정 '