2014-01-16 3 views
2

У меня есть вид сетки, который заполняет данные, когда пользователь нажимает кнопку поиска. Если пользователь не нажал кнопку поиска, он должен показать сообщение, которое не было найдено при выборе. Я сделал следующее:Grid View Empty Data Template в ASP.NET

<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> 

Если пользователь выбирает некоторые выпадающие, чем это показывает сообщение, если пустой результат найден. Как я могу заставить это сделать, когда пользователь приходит в первый раз, он должен показать какое-то сообщение, например, выбрать вариант поиска.

ответ

5

EmptyDataTemplate не работает, если вы не сделали DataBind.

вы можете сделать:

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

большое спасибо Я сделал это на странице загрузки :) 'если (gvSoag.Rows.Count <1) gvSoag.DataSource = NULL; gvSoag.DataBind(); ' –