The website I am working on will contain a drop-down list that shows a number of reason codes.
Is it possible to populate a drop-down list with an array derived from a custom class?
Something like this:
ASPX Page
<asp:DropDownList ID="ddlReasonsWhy" runat="server"></asp:DropDownList>
ASPX Code Behind
protected void Page_Load(object sender, EventArgs e)
{
//instantiate custom class
Class1 reasonsList = new Class1();
//populate reasons list
this.ddlReasonsWhy.Items.Add(reasonsList.getReasons);
Custom Class
public string[] getReasons()
{
string[] Reasons;
Reasons[0] = "test";
Reasons[1] = "test2";
Reasons[2] = "test3";
return Reasons;
}
UPDATE1:
Thanks to the answers and this stack link my final solution is similar to Ahmet and silky answers.
Class
public List<ListItem> getRejectReasons()
{
List<ListItem> reasons = new List<ListItem>();
reasons.Add(new ListItem("Select Value", "0"));
reasons.Add(new ListItem("Red", "1"));
reasons.Add(new ListItem("Green", "2"));
return reasons;
}
Code Behind
//instantiate custom class
Class1 reject = new Class1();
this.ddlReasonsWhy.DataSource = reject.getRejectReasons();
this.ddlReasonsWhy.DataBind();