user2785097
user2785097

Reputation: 31

Bind the Kendo DropDownListFor

The kendo dropdownlistfor shows the accurate undefined number of record in dropdown, but it do not show the Item Name. Please help in this regards, Thanks

**Controller**

var cdd = db.Items.Select(x => new
{
x.ItemID,
x.ItemName
}).ToList();

var viewmodel= new Accounting.DAL.Item();
var selec = new SelectList(cdd, "ItemID", "ItemName");
viewmodel.ItemsDrop = selec;
return View(viewmodel);


**Model**
 public SelectList ItemsDrop { get; set; }

 **View**

 @(Html.Kendo()
.DropDownListFor(m => m.ItemName)



.Name("ItemName")
.DataTextField("ItemName")
.DataValueField("ItemID")
  .BindTo(Model.ItemsDrop)
 )

Upvotes: 1

Views: 185

Answers (1)

PAULDAWG
PAULDAWG

Reputation: 790

You're passing a select list to the view so your dropdownlist should look like this:

@(Html.Kendo()
.DropDownListFor(m => m.ItemName)
.Name("ItemName")
.DataTextField("Text")
.DataValueField("Value")
  .BindTo(Model.ItemsDrop)
 )

If you're controller was just passing a Json result like this:

return Json(cdd.Select( p => new {ItemName = p.ItemName, ItemID = p.ItemID}), JsonRequestBehavior.AllowGet);

then how you had your dropdownlistfor() would be fine as is.

Upvotes: 1

Related Questions