首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GridView不显示列或空记录文本

GridView不显示列或空记录文本
EN

Stack Overflow用户
提问于 2015-12-15 20:17:09
回答 1查看 902关注 0票数 1

我有一个存储过程,它返回包括列名在内的数据。下面是在空存储过程上返回的内容。

只有在返回数据时,我的网格视图才会显示列标题。

它不显示,而不是,显示列标题(ShowHeaderWhenEmpty)或在datatable为0时找到的无记录(EmptyDataText)

代码语言:javascript
复制
protected void populateTableData(GridView gv, DataTable dt) {
            //CLEAR ANY PREVIOUS DATA
            gv.DataSource = null;
            gv.DataBind();

            //LOAD NEW DATA
            gv.DataSource = dt;
            gv.DataBind();
            gv.ShowHeaderWhenEmpty = true; 
            gv.EmptyDataText = "No records where found.";

            //REQUIRED FOR BOOTSTRAP TO MAKE THE TABLE LOOK CORRECTLY
            gv.UseAccessibleHeader = true;

        }

下面是我在aspx方面的网格视图:

代码语言:javascript
复制
<asp:GridView runat="server" ID="gvFees" GridLines="None" CellPadding="0" CellSpacing="0" AutoGenerateColumns="true"  CssClass="table table-hover table-striped" OnRowDataBound="gvFees_RowDataBound" ></asp:GridView>

我做错了什么?我更喜欢代码隐藏的解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-15 20:46:46

将您的DataBind()调用移到末尾。在设置显示标头的选项之前绑定数据。

代码语言:javascript
复制
protected void populateTableData(GridView gv, DataTable dt)
{
    //CLEAR ANY PREVIOUS DATA
    gv.DataSource = null;
    gv.DataBind();

    //LOAD NEW DATA
    gv.DataSource = dt;
    gv.ShowHeaderWhenEmpty = true;
    gv.EmptyDataText = "No records where found.";

    //REQUIRED FOR BOOTSTRAP TO MAKE THE TABLE LOOK CORRECTLY
    gv.UseAccessibleHeader = true;
    gv.DataBind();
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34298592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档