0

我正在为自己制作一些 webpart,我想用一些数据填充 SPGridview。

DataTable table = /*some data*/;
SPGridview grid = new SPGridview();

// setting up SPGridview properties 

grid.DataSource = table;
grid.DataBind();

当我使用 GirdView 执行此操作时,它工作得很好。但是当我尝试使用 SPGridview 执行此操作时,我的 webpart 只显示空白页面。我想 SPGridview 需要从我这边多一点,如果你能给我提示如何做到这一点。

4

2 回答 2

1
        SPGridView myGridView = new SPGridView();
        myGridView.Enabled = true;

        myGridView.DataSource = table;
        myGridView.DataBind();


       this.Controls.Add(myGridView);

试试这个代码............

于 2013-07-08T06:37:48.787 回答
0

出于某种原因,Microsoft 禁用了 AutoGenerateColumns 属性,我不知道如何在不使用循环的情况下绕过。这是一个工作代码:

        SPGridView _gridview = new SPGridView();
        DataTable table = /*some data*/;

        _gridview.Enabled = true;
        _gridview.AutoGenerateColumns = false;
        _gridview.Visible = true;

        foreach(DataColumn col in table.Columns)
        {
            SPBoundField field = new SPBoundField();
            field.DataField = col.ColumnName;
            _gridview.Columns.Add(field);
        }

        _gridview.DataSource = table;
        _gridview.DataBind();

        this.Controls.Add(_gridview);
于 2013-07-08T08:35:17.977 回答