【问题标题】:asp.net gridview showheaderwhenempty works only in postbackasp.net gridview showheaderwhenempty 仅在回发中有效
【发布时间】:2012-04-02 19:46:46
【问题描述】:

我意识到 ShowHeaderWhenEmpty 仅适用于 PostBacks。页面加载后有什么办法让它工作吗?

<asp:GridView ID="GridView1"... ShowHeaderWhenEmpty="true"... >
<EmptyDataTemplate>
<asp:Label ID="Label1" runat="server" Text="No records found"></asp:Label>
</EmptyDataTemplate>

当我没有要显示的信息时,上面的消息只出现在 PostBacks 中,页面加载时不会出现。

【问题讨论】:

  • 您能否举例说明您正在尝试做什么(具体而言)?很难说出你在问什么。
  • 感谢您提供更多信息!

标签: asp.net vb.net gridview


【解决方案1】:

注意:此答案假设(根据您的问题)您将您的 GridView 绑定到 PostBack 上的数据源,而不是在 Page_Load 期间. 如果我错了,请纠正我。

&lt;EmptyDataTemplate&gt; 内容仅在您的GridView 被数据绑定后才会显示。如果您只是在 Postback 上进行数据绑定(基于某些用户交互),那么解决此问题的一种方法是将您的 GridView 绑定到一个空(人工)数据集,这样&lt;EmptyDataTemplate&gt; 就会显示出来。

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If Not IsPostBack
        Dim table As New DataTable
        GridView1.DataSource = table
        GridView1.DataBind()
    End If
End Sub

来自 EmptyDataTemplate 上的 MSDN article(重点是我的):

空数据行显示在GridView控件中,当数据 绑定到控件的源不包含任何记录。

如果没有绑定到控件的数据源,则此属性尚不相关。

【讨论】:

  • @Somebody 完全没问题 =)
猜你喜欢
  • 2016-06-14
  • 2023-03-17
  • 1970-01-01
  • 1970-01-01
  • 2016-08-03
  • 2015-06-18
  • 1970-01-01
  • 2016-07-15
  • 1970-01-01
相关资源
最近更新 更多