在GridView中显示数据表

时间:2011-12-23 17:44:19

标签: c# asp.net sql-server devexpress

我编写了存储过程,我想在gridview中显示结果(DevExpress的ASPxGridView,但应该和GridView一样)。

我得到数据表,没关系,但是当我尝试将i传递给GridView时,没有任何反应。

除此之外还有什么我应该做的:

ASPxGridView1.DataSource = SP1;
ASPxGridView1.DataBind();

SP1是数据表。

3 个答案:

答案 0 :(得分:2)

确保“SP1”DataTable对象包含DataRows:

int rowCount = (SP1 as DataTable).Rows.Count;

此外,请检查DX支持基础中的以下知识库文章:

为什么分页(排序,分组,过滤)在ASPxGridView中不起作用?

http://www.devexpress.com/Support/Center/kb/p/K18183.aspx

以及以下Code Central示例:

通过代码

将网格绑定到DataTable

http://www.devexpress.com/Support/Center/e/E168.aspx

答案 1 :(得分:0)

这就是你需要做的一切。如果您没有看到任何数据,或者因为您的数据表是空的,或者您在其他地方有其他错误。

答案 2 :(得分:0)

您的用户定义的功能

private void GridLoad()
{
    ASPxGridView1.DataSource = SP1;
    ASPxGridView1.DataBind();
}

Page_Load活动

中调用此功能
GridLoad();

如果您仍然看不到网格,请将SP1映射到Session变量,然后将其称为:

  1. DataTable绑定到Session变量

    Session["myDatatable"]=SP1;
    
  2. Page_Load上发布此功能:

    GridLoad();
    
  3. 您的用户定义函数(Page_Load之外)

    private void GridLoad()
    {
        if(Session["myDatatable"]==null)
        {
            ASPxGridView1.DataSource = SP1;
            ASPxGridView1.DataBind();
        }
        else
        {
            ASPxGridView1.DataSource = (DataTable)Session["myDatatable"];
            ASPxGridView1.DataBind();
        }
    }