[asp.net]如何在update panel裡面的按鈕進行下載

  • 2798
  • 0

摘要:[asp.net]如何在update panel裡面的按鈕進行下載

一般來說是在.aspx裡面的update panel針對那個按鈕加入trigger, 強制這個按鈕會觸發postback

那就可以讓這個按鈕在update panel裡面也可以下載了

<Triggers>
            <asp:PostBackTrigger ControlID="btnExcel" />
        </Triggers>

但是假設按鈕是在gridview裡面

那就在gridview的RowDataBound事件裡面

把按鈕(asp:button or asp:linkbutton)抓出來,用程式碼加入postback事件即可,如下:

//註冊下載的按鈕,讓他在update panel裡面仍然可以post back, 才可以正常下載
                LinkButton lnkDownloadVerify = (LinkButton)e.Item.FindControl("lnkDownloadVerify");
                ScriptManager1.RegisterPostBackControl(lnkDownloadVerify);

或是參考此篇的作法,用泛型處理常式也可以拉

[asp.net]如何利用泛型處理常式(.ashx)來做下載的動作

http://www.dotblogs.com.tw/kevinya/archive/2013/05/08/103135.aspx

參考資料

UpdatePanel中如何支援下載檔案? (91的回文)

https://social.msdn.microsoft.com/Forums/zh-TW/4d4442a5-380b-4913-8cd8-7873348d6dfd/updatepanel?forum=236