簡體   English   中英

多個數據源到單個下拉列表

[英]multiple datasource to single dropdownlist

如何將多個數據源設置為單個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();

您可以使用LINQ輕松解決此問題:

        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
            }
        );

然后將其綁定到您的DropDownList

    DrpPosition.DataSource = finalQuery;
    DrpPosition.DataTextField = "Text";
    DrpPosition.DataValueField = "Value";
    DrpPosition.DataBind();

這是不可能的,但是您可以在綁定之前合並數據源。

或者你可以使用

foreach(var item in yourDataSourceComplete)//yourDataSourceComplete = List1 + List2
{ 
  .....
  DrpPosition.Items.Add(Yourkey, YourValue);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM