Показать настроенный выпадающий список - PullRequest
0 голосов
/ 05 января 2011

У меня проблема с отображением имен разных категорий в виде выпадающего списка + отображение общего имени, которое является выбором для каждой категории. Мне нужно это для того, чтобы создать функцию поиска.

Оригинальный список категорий:

  • Datorer & IT
  • Философия и религия
  • Sport & Fritid
  • Джур и Натур
  • Konst & Musik
  • Психологи и педагоги

Запрос на отображение в виде выпадающего списка:

  • Все категории
  • Datorer & IT
  • Философия и религия
  • Sport & Fritid
  • Джур и Натур
  • Konst & Musik
  • Психологи и педагоги

<% @ Import Namespace = "BokButik1"%>

<% @ Control Language = "C #" Inherits = "System.Web.Mvc.ViewUserControl"%>

<% using (Html.BeginForm()) {%> 

<fieldset> 
    <legend>Edit Album</legend> 

        <%: Html.DropDownList("KategoriID", new SelectList(ViewData["Kategoris"] as IEnumerable, "KategoriID", "KategoriNamn", Model.Kategoris))%> 



    <p> 
        <input type="submit" value="Save" /> 
    </p> 
</fieldset> 

<% } %>



namespace BokButik1.ViewModels
{
    public class SokningIndexViewModel
    {
        public List<Kategori> Kategoris { get; set; }
    }
}


namespace BokButik1.Controllers
{
    public class SokningController : Controller
    {


        private IKategoriRepository myIKategoriRepository = new KategoriRepository();

        //
        // GET: /Sokning/

        public ActionResult Index()
        {
            var SokningIndexViewModel = new SokningIndexViewModel 
            {
                Kategoris = myIKategoriRepository.HamtaAllaKategoriNamn()       
            };

            return View(SokningIndexViewModel);
        }


    }
}

1 Ответ

0 голосов
/ 05 января 2011

Просто добавьте новый элемент Kategori в начало вашего списка, однако, возможно, вы также смешиваете свою модель и ViewData до

public ActionResult Index()
{

  var SokningIndexViewModel = new SokningIndexViewModel() 
  {
    Kategoris = myIKategoriRepository.HamtaAllaKategoriNamn();       
  };
  //add the 'all catagory' item
  SokningIndexViewModel.Kategoris.Insert(0, new Kategori() {
    KategoriID = 0,
    KategoriNamn = "All Category"
  });
  return View(SokningIndexViewModel);

}

На ваш взгляд

<%: Html.DropDownList("KategoriID", new SelectList(Model.Kategoris as IEnumerable, "KategoriID", "KategoriNamn"))%>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...