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

只有在返回数据时,我的网格视图才会显示列标题。
它不显示,而不是,显示列标题(ShowHeaderWhenEmpty)或在datatable为0时找到的无记录(EmptyDataText)。
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方面的网格视图:
<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>我做错了什么?我更喜欢代码隐藏的解决方案。
发布于 2015-12-15 20:46:46
将您的DataBind()调用移到末尾。在设置显示标头的选项之前绑定数据。
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();
}https://stackoverflow.com/questions/34298592
复制相似问题