2013-04-05 79 views
0

我有一个列表视图,它从sql数据源中检索数据。我正在尝试制作两个按钮(是和否),并且列表视图之外的标签仅在列表视图不为空时才可见。过程是:一个人将信息输入文本框并单击按钮检索,如果输入的数据存在于数据库中,那么列表视图将显示某些信息。 我有以下代码:如果列表视图为空,则显示按钮

protected void btnExistingRetrive_Click(object sender, EventArgs e) 
{ 

    if (lstExisting.Items.Count>0) 
    { 
     lblIsITYou.Visible = true; 
     btnYes.Visible = true; 
     btnNo.Visible = true; 
    } 

} 

默认按钮和标签是不可见的。 问题是当我点击检索按钮它显示列表视图的信息,但按钮的标签仍然不可见。只有当我双击检索按钮时,它们才可见。请告诉我什么是我的错误? 谢谢

回答

1

你绑定列表视图检查的项目算过吗?

+0

这就是我忘了。我刚刚添加它,它正常工作。非常感谢提示 – Eugene 2013-04-05 18:16:52

+0

请将此标记为答案,如果这有助于你,让其他人知道这是答案。 – qamar 2013-04-05 18:18:45

4

使用ListView EmptyDataTemplate

<asp:ListView ID="ContactsListView" 
    DataSourceID="ContactsDataSource" 
    runat="server"> 
    <LayoutTemplate> 
     <table runat="server" id="tblProducts"> 
     <tr runat="server" id="itemPlaceholder" /> 
     </table> 
    </LayoutTemplate> 
    <ItemTemplate> 
     <tr runat="server"> 
      <td> 
      <asp:Label ID="FirstNameLabel" runat="Server" Text='<%#Eval("FirstName") %>' /> 
      </td> 
      <td> 
      <asp:Label ID="LastNameLabel" runat="Server" Text='<%#Eval("LastName") %>' /> 
      </td> 
     </tr> 
     </ItemTemplate> 
     <EmptyDataTemplate> 
      <table class="emptyTable" cellpadding="5" cellspacing="5"> 
      <tr> 
       <td> 
       <asp:Image ID="NoDataImage" 
        ImageUrl="~/Images/NoDataImage.jpg" 
        runat="server"/> 
       </td> 
       <td> 
       No records available. 
       </td> 
      </tr> 
      </table> 
     </EmptyDataTemplate> 
    </asp:ListView> 
+0

非常感谢您! – Eugene 2013-04-05 18:18:24

1

在回发而不是事件中执行此操作。 在你的Page_Load做这样的事情:

protected void Page_Load(object sender, EventArgs e) 
{ 
    bool visible = (lstExisting.Items.Count > 0); // assuming it's never null 
    lblIsITYou.Visible = visible; 
    btnYes.Visible = visible; 
    btnNo.Visible = visible; 
} 

如果上面创建的并发症然后做,因为我有回发先说:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (IsPostBack) 
    { 
     bool visible = (lstExisting.Items.Count > 0); // assuming it's never null 
     lblIsITYou.Visible = visible; 
     btnYes.Visible = visible; 
     btnNo.Visible = visible; 
    } 
} 
+0

非常感谢您的帮助 – Eugene 2013-04-05 18:17:25

相关问题