如何显示空的gid视图?

时间:2013-06-26 15:51:53

标签: asp.net

我有一个网格视图。如果没有任何数据,如何在页面中看到列标题? 我试试这个:

<Empty Data Template>
      no data.
</Empty Data Template>  

但这不是我想要的。我想显示网格视图的列,即使其中没​​有数据。请帮帮我!

4 个答案:

答案 0 :(得分:1)

如果您的目标是c#4.0+,则可以使用ShowHeaderWhenEmpty属性,否则,您需要添加一些自定义代码。

答案 1 :(得分:1)

试试这个

1)将ShowHeaderWhenEmpty="True"添加到GridView

<asp:GridView ShowHeaderWhenEmpty="true" runat="server" />

2)你的GridView必须绑定到数据源(至少是一个空集合)才能显示空模板

   GridView1.DataSource = [Some DataSource Here];
   GridView1.DataBind();

答案 2 :(得分:0)

在这里,您将找到所需内容:

http://msdn.microsoft.com/pt-br/library/system.web.ui.webcontrols.gridview.emptydatatemplate.aspx

我尝试过它有效!

  <asp:gridview id="CustomersGridView" 
    datasourceid="CustomersSqlDataSource" 
    autogeneratecolumns="true"
    runat="server">

    <emptydatarowstyle backcolor="LightBlue"
      forecolor="Red"/>

    <emptydatatemplate>

      <asp:image id="NoDataImage"
        imageurl="~/images/Image.jpg"
        alternatetext="No Image" 
        runat="server"/>

        No Data Found.  

    </emptydatatemplate> 

  </asp:gridview>

答案 3 :(得分:0)

你有2种方法可以做到:

1 - 通过模拟

中的输入字段

                                                           第一个细胞                                                       第二细胞                                                       第三细胞                                                 2 - 创建空数据集并将其绑定到GirdView。

如果ds.Tables(0).Rows.Count&gt; 0然后             grd_codes.DataSource = ds             grd_codes.DataMember = ds.Tables(0).TableName

        grd_codes.DataBind()

    Else
        Try
            If ds.Tables(0).Rows.Count = 0 Then

                ds.Tables(0).Rows.Add(ds.Tables(0).NewRow())
                grd_codes.DataSource = ds
                grd_codes.DataBind()
                Dim columnCount As Integer = grd_codes.Rows(0).Cells.Count
                grd_codes.Rows(0).Cells.Clear()
                grd_codes.Rows(0).Cells.Add(New TableCell)
                grd_codes.Rows(0).Cells(0).ColumnSpan = columnCount
                grd_codes.Rows(0).Cells(0).Text = "No Records Found."

            End If

我更喜欢第一种方式,因为绑定空DataSet有一些问题。