2010-02-01 74 views
0

我在我的应用程序中有一个下拉列表,我通过数据库记录绑定了 ,但是在任何编辑表单上我想设置下拉列表的选定索引。我该怎么做,我是在这里代表我的代码。MVC中的DropDownList?

代码绑定下拉列表

public IList GetFeedbackList() 
{ 
    int feedbackId = 0; 
    string feedbackName = string.Empty; 

    using (var db = new brandconnectionsEntities()) 
    { 
    return (IList)(from s in db.BC_FeedbackBy 
         select new 
         { 

         feedbackId =s.FeedbackById , 
         feedbackName=s.FeedbackBy , 
         }) 
        .ToList(); 
    } 
} 

//Code for returning the list 

IList allfeedbacks = _dropdownProvider.GetFeedbackList(); 

ViewData["feedback_for"] = new SelectList(allfeedbacks, "feedbackId", "feedbackName"); 

//In the View Page 
<%=Html.DropDownList("feedback_for", ViewData["feedback_for"] as SelectList, "--Select--", new { @class = "inputtext1" })%> 

请告诉怎能我设置所选指数从数据库

感谢 丽思

+0

下拉列表有什么好运? – magnus 2010-02-07 19:17:15

回答

0
ViewData["feedback_for"] = new SelectList(allfeedbacks, "feedbackId", "feedbackName", selectedvalue); 

至少在MVC2。

我有一个问题,当我给与下拉键相同的名称作为密钥消失。即:

<%=Html.DropDownList("feedbackId", ViewData["feedback_for"] as SelectList, "--Select--", new { @class = "inputtext1" })%> 
0

在构造你的选择列表中,您可以指定选项....

ViewData["feedback_for"] = new SelectList(allfeedbacks, "feedbackId", "feedbackName", 
       allfeedbacks.FirstOrDefault(f => f.FeedbackById == {ID of selected record})); 
0

传递SelectListItems的列表来查看。 SelectListItem有一个选中的属性。

IEnumerable<SelectListItem> itemList = 
       from item in Items 
       select new SelectListItem 
       { 
        Text = item.Name, 
        Value = item.Key, 
        Selected = (item.Key == "TheKeyYouWantToSet") 
       };