how do i set the multiple datasource to single dropdownlist?
DrpPosition.ClearSelection();
DrpPosition.DataSource = AdvertizeManager.GetList("", "", "", "");
DrpPosition.DataTextField = "PNAME";
DrpPosition.DataValueField = "ADID";
DrpPosition.DataBind();
DrpPosition.DataSource = CategoryManager.GetList("", "", "", "");
DrpPosition.DataTextField = "NAME";
DrpPosition.DataValueField = "CATID";
DrpPosition.DataBind();
You can use LINQ to easily solve this:
var advertizes = AdvertizeManager.GetList...
var categories = CategoryManager.GetList....
// create your annonymous type
var customAdvertizes = from advertize in advertizes
select new
{
Value = advertize.ADID,
Text = advertize.PNAME
};
var finalQuery = customAdvertizes.Concat(
from category in categories
select new
{
Value = category.CATID,
Text = category.NAME
}
);
And then just bind it to your DropDownList
DrpPosition.DataSource = finalQuery;
DrpPosition.DataTextField = "Text";
DrpPosition.DataValueField = "Value";
DrpPosition.DataBind();
It's impossible but you can merge your datasource before bind.
Or you can use
foreach(var item in yourDataSourceComplete)//yourDataSourceComplete = List1 + List2
{
.....
DrpPosition.Items.Add(Yourkey, YourValue);
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.