簡體   English   中英

如何合並多個列表並用作GridView數據源

[英]How to combine multiple lists and use as a GridView datasource

ASP.net:

<asp:GridView ID="gvSP" runat="server" AutoGenerateColumns="true">
</asp:GridView>

后台代碼:

lstName.Add(lstN[f]); //name
lstCMSID.Add(lstNum[f]); //number
lstSpecialtyPhys.Add(data.Text.ToString()); //value

我想結合三個List並在上面的GridView中顯示它,如下所示:

Name                        Number              Value
John Doe                    56                  90
James Coon                  34                  24

如何實現以上目標,所以三列中包含三個不同的標題文本。

最簡單的方法是執行循環(for,foreach等)

        List<dynamic> lstName = new List<dynamic>();
        List<dynamic> lstCMSID = new List<dynamic>();
        List<dynamic> lstSpecialtyPhys = new List<dynamic>();

        lstName.Add("John Doe");
        lstCMSID.Add("56");
        lstSpecialtyPhys.Add("90");

        lstName.Add("James Coon");
        lstCMSID.Add("34");
        lstSpecialtyPhys.Add("24");

        DataTable dt = new DataTable();
        dt.Columns.Add("Name");
        dt.Columns.Add("Number");
        dt.Columns.Add("Value");

        for (int i = 0; i < lstName.Count; i++)
        {
            dt.Rows.Add(lstName[i], lstCMSID[i], lstSpecialtyPhys[i]);
        }

        gvSP.DataSource = dt;
        gvSP.DataBind();

創建一個類

private class ABC{  
string name ="";  
int number=0,val=0;  
    public string name1 {
    get { return name; }
    set { name = value; }
}
public int number1 {
    get { return number; }
    set { number = value; }
}
public int value1 {
    get { return val; }
    set { val = value; }
}
}

在下面的代碼中添加以下代碼

var source = new BindingSource();
ArrayList dataobj = new ArrayList();
ABC obj = new ABC();
obj.name="Sample"  
obj.number=1
obj.value=5 
dataobj.add(obj);  
source.DataSource = dataobj;
DataGrid.DataSource = source;
DataGrid.Columns(0).Name="Desired Name" // So On for the Rest, to set desired name to the header

希望能幫助到你

您可以創建一個DataTable並將數據放入其中,然后將該表綁定到網格。

暫無
暫無

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

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