Asp.net Gridview为空时显示标题

Asp.net Gridview为空时显示标题,asp.net,vb.net,gridview,Asp.net,Vb.net,Gridview,我在多个GridView中添加了一个标题,以显示数据库中多个视图的数据。我需要的标题是可见的,即使在GridView中没有行 <asp:GridView ID="GridViewH1" runat="server" AutoGenerateColumns="False" DataSourceID="Holding1" ShowHeader="False" GridLines="None" Caption="- Holding 1 -" > <Columns>

我在多个GridView中添加了一个标题,以显示数据库中多个视图的数据。我需要的标题是可见的,即使在GridView中没有行

<asp:GridView ID="GridViewH1" runat="server" AutoGenerateColumns="False" DataSourceID="Holding1" ShowHeader="False" GridLines="None" Caption="- Holding 1 -" >
    <Columns>
        <asp:BoundField DataField="POS_NUM" HeaderText="POS_NUM" SortExpression="POS_NUM" ItemStyle-CssClass="gridview" />
        <asp:BoundField DataField="RAILCAR" HeaderText="RAILCAR" SortExpression="RAILCAR" />
    </Columns>
</asp:GridView>
对于这种行为,有一个多视图控件

将GridView放在MultiView的视图中,另一个视图放在回退文本中。这是指导您在线查找实际ASP.NET规范的伪代码:

<asp:MultiView ...>
    <asp:View ...>
        <asp:GridView .... />
    </asp:View>
    <asp:View ...>
        No data available.
    </asp:View>
</asp:MultiView ...>

然后,您可以使用非常简单的if语句从代码隐藏中在这两个视图之间切换。注意,你必须预先计算预期结果的数量来进行切换。

可能不考虑这一点。但是,您是否在它们上尝试了EmptyDataTemplate?您只需输入标题作为EmptyDataTemplate的消息

如果GridView附加了数据源,但没有返回任何数据。。。EmptyDataTemplate应该是活动模板

    <asp:GridView ID="GridView1" runat="server" DataSourceID="dsPartTypes">
        <EmptyDataTemplate>
            No Data Found For GridView1!
        </EmptyDataTemplate>
    </asp:GridView>

希望这是有帮助的

感谢您提供的潜在解决方案。我有8个gridviews,将来可能需要将其放大。如果可能的话,我想买一些轻一点的。如果你使用ASP.NET 4,这可能会对你有所帮助