2017-12-20 66 views
1

ページがあり、そこにリピータがあります。 Button(btnExport)私はデータをExcelにエクスポートするので、UpdatePanelのボタンをPostBackTriggerに追加します。データバインド後にリピータが更新されない

私はmethod(BindData)を持っています。databindingリピーターです。だから私の問題は、Button click(btnExport_click)BindDataメソッドを追加したときにリピータがリフレッシュしない(PS:Datasetが更新され、DataBind()メソッドが機能するが、リピータがリフレッシュしない新しい値を返す)。これは私の最初の投稿です。 。ありがとうございます。

<asp:Repeater ID="rptGoods" runat="server"> 
    <ItemTemplate> 
     <asp:Literal ID="litGoodCode" runat="server" Text='<%# 
     Eval("GOODS_CODE") %>' /> 
     <asp:Literal ID="litGoodName" runat="server" Text='<%# 
     Eval("GOODS_CNAME") %>' /> 
    </ItemTemplate> 
</asp:Repeater> 
<asp:Button ID="btnExport" runat="server" Text="Export" OnClick="btnExport_click" /> 

<asp:UpdatePanel ID="Upd_Export" runat="server" > 
    <ContentTemplate> 
    </ContentTemplate> 
    <Triggers> 
     <asp:PostBackTrigger ControlID="btnExport" /> 
    </Triggers> 
</asp:UpdatePanel> 


protected void btnExport_click(object sender, EventArgs e) 
{ 
    ExportToExcel(); 
    BindData(); 
} 

private void BindData() 
{ 
    try 
    { 

     rptGoods.DataSource = /Here I get Dataset/ 
     rptGoods.DataBind();     
    } 
    catch (Exception ex) 
    { 
     ExceptionHelper exsaver = new ExceptionHelper(); 
     exsaver.SaveException(ex); 
    } 
} 
+0

リピーターはUpdatePanelの外にありますか?この記事を参照してください:https://stackoverflow.com/questions/2864692/how-to-update-a-control-outside-of-an-updatepanel – Markus

+1

ファイルをエクスポートしてUIを更新することはできません。それはどちらか一方です。 – VDWWD

+0

返信いただきありがとうございます。私はPostBackTriggerの問題だと思う。 –

答えて

1

リピーターはUpdatePanelの外に配置されているため、非同期ポストバック後にリフレッシュされません。 UpdatePanelのコンテンツのみが更新されます。

リピーターをUpdatePanel内に移動するか、別のUpdatePanelでラップします。