2009-09-02 81 views
0

我有一個帶有pagertemplate的數據手冊。在模板中,我有一個「全部顯示」按鈕,它將數據手冊的PageSize設置爲顯示所有記錄。這工作正常,但我希望能夠隱藏按鈕,當它被點擊。它在UpdatePanel中,所以我不知道這是否有所作爲?請幫忙DataPager模板和LinkBut​​ton?

 <asp:DataPager ID="Pager" runat="server" PagedControlID="rangeList" PageSize="15" EnableViewState="false">      
    <Fields> 
    <asp:TemplatePagerField> 
     <PagerTemplate> 
     <asp:LinkButton ID="LinkButton1" runat="server" CommandArgument="<%# Container.TotalRowCount.ToString() %>" 
     oncommand="LinkButton1_Command" >Show All Ranges</asp:LinkButton>&nbsp;&nbsp; 
     </PagerTemplate> 
    </asp:TemplatePagerField> 
    <asp:numericpagerfield ButtonCount="10" NextPageText="..." PreviousPageText="..." CurrentPageLabelCssClass="pageOn" /> 
    </Fields>   
    </asp:DataPager> 

而代碼隱藏:

protected void LinkButton1_Command(object sender, CommandEventArgs e) 

{ this.Pager.PageSize = int.Parse(e.CommandArgument.ToString());

LinkBut​​ton lb =(LinkBut​​ton)sender; (lb!= null) lb.Visible = false; }

rangeList.DataBind(); }

第一次點擊可以正常工作,並刷新ListView,然後調整分頁器以顯示一個頁面,其中包含所有結果,但該按鈕並不會隨我想要的那樣消失。

任何想法?

+0

似乎無法獲取代碼標籤的竅門,我們對此深感抱歉... – Dave 2009-09-02 13:44:09

回答

0

如果沒有什麼尋呼機中顯示,爲什麼不隱藏導航控件本身:

protected void LinkButton1_Command(object sender, CommandEventArgs e) 
{ 
    this.Pager.PageSize = int.Parse(e.CommandArgument.ToString()); 
    this.Pager.Visible = false; 
    lnkShowPages.Visible = true; // EDIT only 
    rangeList.DataBind(); 
} 

編輯

你可以有第二個「顯示頁」的LinkBut​​ton這是最初不可見並在點擊顯示所有鏈接按鈕時變爲可見(上圖)。

protected void lnkShowPages_Command(object sender, CommandEventArgs e) 
{ 
    this.Pager.PageSize = int.Parse(e.CommandArgument.ToString()); 
    this.Pager.Visible = true; 
    lnkShowPages.Visible = false; 
    rangeList.DataBind(); 
} 
+0

您:當點擊這個新的LinkBut​​ton,它可能然後通過設置尋呼機的每頁和知名度,並隱藏自身啓用分頁,先生,剛剛指出了我完全錯過的最明顯的事情......謝謝 – Dave 2009-09-02 14:56:17