2014-06-11 2 views
0

내 모델 클래스에서 내보기의 드롭 다운 목록이 될 문자열 목록을 만들었습니다. 사용자는 하나의 옵션 만 선택할 수 있습니다. 내 목록에있는 문자열의 수는 매번 달라질 것입니다. 나는 HTML 도우미의 매개 변수가 무엇을 요구하는지 이해하기 위해 고심하고있다. List of IEnumerable을 구현했기 때문에 작동 할 것이라고 생각한 매개 변수 중 일부로 문자열 목록을 사용하려고했지만 시도하지 않았습니다. vb.net (대부분 C#으로되어 있음)로 작성된 예제를 찾는 데 문제가 있습니다.Html.DropDownListFor를 사용하여 VB.NET의 문자열 목록에서 DropDownList를 만드는 방법 ASP.NET MVC

누군가 DropDownListFor가 parameterwise에 대해 묻는 것뿐만 아니라 문자열 목록에서 드롭 다운 목록을 코딩하는 방법에 대한 올바른 방향으로 나를 가리키기 위해 더 나은 설명을 줄 수 있기를 바랬습니다.

답변

0

나는 사과한다. 그러나 나의 VB는 일종의 녹슬지 만 잘하면이 수용한다. 나는 명명법이 VB에서 약간 다르다는 것을 알고 있습니다. 그러나 이것은 잘하면 (또는 어쩌면 다른 사람이 내 게시물을 편집하고 VB.NET 버전을 제공 할 것입니다.

IList<String> strings = new List<String> { 
    "foo", "bar", "baz" 
}; 

그리고 어쩌면 당신의 모델 같은 외모 :

public class MyModel 
{ 
    public String SelectedValue { get; set; } 
    public IList<String> AvailableOptions { get; set; } 
} 

당신은 같은 것을 사용할 수 있습니다

@Html.DropDownListFor(
    x => x.SelectedValue, 
    new SelectList(Model.AvailableOptions) 
); 

과 유사한 것으로 "문자열의 목록"을 의미 가정

그러면 List<String>은로 바뀝니다.s를 선택하고 SelectedValue에 다시 선택한 값을 지정하십시오.

@Html.DropDownListFor(
    x => x.SelectedValue, 
    Model.AvailableOptions.Select(x => new SelectListItem { 
    Text = x, 
    Value = x, 
    Selected = false // or whatever condition(s) you may have 
    }) 
); 
+0

귀하의 형식/구문 내 View.vbhtml에 쓰고 무엇을 같은 보이지 않는 : 물론

당신은 당신이 LINQ를 사용할 수 있습니다 더 컨트롤을 원하는 경우. 이것은 사용하려는 방법입니다. [http://msdn.microsoft.com/en-us/library/ee703670(v=vs.118).aspx](http://msdn.microsoft.com/en -us/library/ee703670 (v = vs.118) .aspx) – user3712663

+0

VB에서 C#이 아니라면 약간 변경 될 것입니다. 예를 들어, C#의 lambdas ('x =>') 대신'Function (x)'와 같은 것을 사용할 것입니다. –

관련 문제