ASP.NET中的网格视图空数据模板

时间:2014-01-16 18:33:38

标签: asp.net gridview

我有一个网格视图,用户点击搜索按钮时会填充数据。如果用户没有点击搜索按钮,则应显示消息,未在选择中找到数据。我做了以下事情:

 <asp:gridview id="gvSoag" runat="server" AutoGenerateColumns="False"  cssClass="table table-hover"
                    AllowPaging="True" EmptyDataText="No Data found in selection.">
                    <emptydatatemplate><asp:Label Text="No Data found in selection." runat="server"></asp:Label></emptydatatemplate> 
                    <HeaderStyle CssClass="alert-danger"/>                             
                    <Columns>
                             <asp:TemplateField HeaderText="Sub Item Name">
                                <ItemTemplate>
                                   <asp:Label ID="gvLbSubItemName" runat="server" Text='<%# Eval("SA_Dscr")%>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                             <asp:TemplateField HeaderText="Sequence">
                                <ItemTemplate>
                                   <asp:Label ID="gvLbSequence" runat="server" Text='<%# Eval("sequence")%>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Allow">
                                <ItemTemplate>
                                   <asp:Image ID="gvLbAllow" runat="server" ToolTip='<%# Convert.ToBoolean(Eval("isSelected")) == false ? ("Not Allowed") : ("Allowed") %>' src='<%# Convert.ToBoolean(Eval("isSelected")) == false ? ("images/redAF.png") : ("images/greenAF.png") %>'/>
                                </ItemTemplate>
                            </asp:TemplateField>
                             <asp:TemplateField HeaderText="Action">
                                <ItemTemplate>
                                        <asp:ImageButton ID="imgEdit" Style="padding-right: 4px;  vertical-align: middle;"
                                        runat="server"  CommandArgument='<%# Eval("id") %>' AlternateText="Edit" ImageUrl="images/setting.gif"
                                        OnClick="imgEdit_Click" CausesValidation="false" ToolTip="Edit"/>
                                        <asp:ImageButton ID="imgDelete" Style="padding-right: 4px;  vertical-align: middle;"
                                        runat="server" CommandArgument='<%# Eval("id") %>' AlternateText="Delete" ImageUrl="images/delete.gif"
                                        OnClick="imgDelete_Click" CausesValidation="false" ToolTip="Delete"/>
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                        <PagerSettings Visible="False" />

                  </asp:gridview>

如果用户选择了一些下拉列表,则会显示消息,如果找到空结果。我怎样才能做到这一点,当用户第一次来时应该显示一些消息,请选择选项搜索。

1 个答案:

答案 0 :(得分:5)

除非您已完成DataBind,否则EmptyDataTemplate不起作用。

你可以这样做:

gridview1.DataSource= new [] {};  
gridview1.DataBind();