Som*_*ody 1 vb.net asp.net gridview
我意识到ShowHeaderWhenEmpty仅适用于PostBacks.加载页面后有什么方法可以使它工作吗?
<asp:GridView ID="GridView1"... ShowHeaderWhenEmpty="true"... >
<EmptyDataTemplate>
<asp:Label ID="Label1" runat="server" Text="No records found"></asp:Label>
</EmptyDataTemplate>
Run Code Online (Sandbox Code Playgroud)
当我没有要显示的信息时,上面的消息只出现在PostBacks中,当页面加载时没有.
注意:此答案假定(基于您的问题)您将绑定 GridView 到PostBack上的数据源,而不是在期间 Page_Load. 如果我错了,请纠正我.
该<EmptyDataTemplate>内容只显示一次你GridView已经被数据绑定.如果你只是在Postback上进行数据绑定(基于一些用户交互),解决这个问题的一种方法就是将你GridView的数据集绑定到一个空的(人工)数据集上,这样<EmptyDataTemplate>就会显示出来.
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
Run Code Online (Sandbox Code Playgroud)
从关于EmptyDataTemplate 的MSDN文章(强调我的):
GridView当绑定到控件的数据源不包含任何记录时,空数据行将显示在控件中.
如果没有绑定到控件的数据源,则此属性尚不相关.
| 归档时间: |
|
| 查看次数: |
3844 次 |
| 最近记录: |