gridview空数据时 也显示列头

众所周知Asp.Net中的GridView控件能以表格的形式显示数据。废话不多说,给GridView控件指定数据(DataSource),再调用GrideView的DataBind()方法就可以显示数据,编写代码量也少得惊人。也许你可能注意到了,当我们不管用什么显示的数据源,都有可能绑定一个空数据源。比如根据用户输入的查询条件查询出结果有可能为空。这种情况下,页面GridView就什么也不显示,看起来不是很美观。这时我们可以弹出提示框进行提示。但还有另一种处理方法。那就是我要说的重点。给GridView控件设计一个空数据模板(EmptDateTemplate)。这个模板只在在绑定的数据项为0时才会显示。具体怎么定义看例子:

<asp:GridView ID="GridView1" runat="server" >
        <EmptyDataTemplate>
            <table>
                <tr>

                    <th>Id</th>
                    <th>Name</th>
                    <th>Department</th>
                </tr>
                <tr>
                    <td colspan="3">
                        对不起,没有找到任何相关记录
                    </td>
                </tr>
            </table>
        </EmptyDataTemplate>
        <Columns>
            <asp:TemplateField>
                <HeaderTemplate>ID</HeaderTemplate>
                <ItemTemplate><%#eval_r("Id") %></ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField>
                <HeaderTemplate>Name</HeaderTemplate>
                <ItemTemplate><%#eval_r("Name") %></ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField>
                <HeaderTemplate> Department</HeaderTemplate>
                <ItemTemplate><%#eval_r("Department") %></ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

posted on 2011-07-13 10:46  肖秋峰  阅读(1653)  评论(3编辑  收藏  举报

导航