MVC -SelectedList

Today we will see a small example of how to use SelectedList. It comes under the namespace System.Web.Mvc.

This list basically helps you to represent a list that let user to select item.

To start with we will create a Model say SelectListExampleModel.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace SubmitTest.Models
{
public class SelectListExampleModel
{
public SelectListExampleModel()
{
if (Items == null)
{
Items = new List();
}
}
public SelectList ItemList { get; set; }
public List Items { get; set; }
public int ItemList1 { get; set; }
}
public class Item
{
public int ItemId { get; set; }
public string ItemName { get; set; }
}
}
HomeController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using SubmitTest.Models;

namespace SubmitTest.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";

//Lets create a list of items here


var selectedList = new SelectListExampleModel();
Item item = new Item();
item.ItemId = 1;
item.ItemName = "Bread";
selectedList.Items.Add(item);
Item item1 = new Item();
item1.ItemId = 2;
item1.ItemName = "Butter";
selectedList.Items.Add(item1);
selectedList.ItemList = new SelectList(selectedList.Items, "ItemId", "ItemName");

return View(selectedList);
}
[HttpPost]
public ActionResult Index(SelectListExampleModel model)
{
ViewBag.Message = "Welcome to ASP.NET MVC!";



var selected= model.ItemList1.ToString();


return View(model);
}

public ActionResult About()
{
return View();
}
}
}

Lets have a view Named Index.cshtml

@model SubmitTest.Models.SelectListExampleModel

@{
ViewBag.Title = "Home Page";
}

@ViewBag.Message



To learn more about ASP.NET MVC visit http://asp.net/mvc.


@using (Html.BeginForm())
{
@Html.DropDownList("ItemList1", Model.ItemList, "- Please Select -")


}

Happy Coding 🙂

Published by Nirbhay

Technology Geek,Blogger,Reviewer

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: