0

我正在尝试使用 SP2010 网站中的列表填充 gridview 表,作为要在不同 SP 站点上使用的 web 部件。到目前为止,我拥有的代码是:

    SPSite mySite = new SPSite("Sharepoint list URL ");
        SPWeb myweb= mySite.OpenWeb();
        SPList myList = myweb.Lists["ListName"];
        SPListItemCollection items = myList.Items;


                    DataTable table;
                    table = new DataTable();
                    table.Columns.Add("Title", typeof(string));
                    table.Columns.Add("First Name", typeof(string));
                    table.Columns.Add("Last Name", typeof(string));


                    DataRow row;
                    foreach (SPListItem item in items)
                    {
                        row = table.Rows.Add();
                        row["Title"] = item.Name;

                    }
                    GridView2.DataSource = table.DefaultView;
                    GridView2.DataBind();

我尝试将名字和姓氏添加到代码中的其他各个位置,但没有成功。我最终在 webpart 生成的网站上得到了一个表格,但它只有标题列显示正确的值,然后是两列我添加的标题但里面没有值。感谢您花时间考虑我的问题。

4

1 回答 1

1

您可以使用SPListItemCollection直接将其用作 GridView 的数据源。

无需创建 DataTable。

就这样做

SPSite mySite = new SPSite("Sharepoint list URL ");
SPWeb myweb= mySite.OpenWeb();
SPList myList = myweb.Lists["ListName"];
SPListItemCollection items = myList.Items;

GridView2.DataSource = items.GetDataTable();
GridView2.DataBind();

只需绑定要显示的列即可。

于 2013-06-13T07:13:05.353 回答