Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

List<MyClass> as datasource for DropDownList?

I have a simple Class with ID and Name on it which I would like to link to a DropDownList but it seems that myDropDownList.DataTextField = "Name"; and myDropDownList.DataValueField = "ID"; are not accessible or available.

UPDATE: I am using winforms

public class Test
{
    public int ID { get; set; }
    public string Name { get; set; }
}

List<Test> myList = new List<Test>()
{
    // bla bla bla some entries bla bla bla you got the point.
};
myDropDownList.DataSource = myList;

I know I could override ToString but that would not help me with the value of each entry on the list.

Are there any other options to print the Name on the dropdownlist while having another property as the value (ie: printing Name while having the selected value or item as the ID) ?

like image 495
Prix Avatar asked Jun 09 '11 17:06

Prix


1 Answers

For web based ASP.net

You need to specify the drop down lists datatextfield and datavaluefield properties.

MyDropDownList.DataSource = myList;
MyDropDownList.DataTextField="Name";
MyDropDownList.DataValueField="ID"; 
MyDropDownList.DataBind();

For win form

You need to specify the displaymember / valuemember properties.

Just noticed this is a winform application try this:

MyDropDownList.DataSource = myList;
MyDropDownList.DisplayMember = "Name";
MyDropDownList.ValueMember = "ID";
like image 103
JonH Avatar answered Sep 28 '22 12:09

JonH