私は AjaxControlToolkit ModalPopupExtender を使用して、ファイルの選択を圧縮してダウンロードできるようにしています。モーダル ポップアップを設定する asp:Panel 内の asp:Button には、コード ビハインド サブを参照する OnClick プロパティがあります。これは、OkControlID プロパティが asp:ModalPopupExtender に追加されてポップアップを簡単に閉じるまで、期待どおりに機能します...その後、OnClick は無視されます...ポップアップ内で同じ asp:Button を使用する方法を知っている人はいますか? codebehind サブルーチンを呼び出して、ポップアップも閉じますか?
asp:Panel ID="DownLoadForm" runat="server" CssClass="download-form">
<div class="download-header">Files Available For Download</div>
<ul>
<li><asp:CheckBox ID="CheckBox1" runat="server" checked="true" enabled="false"/> File 1</li>
<li><asp:CheckBox ID="CheckBox2" runat="server" /> File 2</li>
<li><asp:CheckBox ID="CheckBox3" runat="server" /> File 3</li>
<li><asp:CheckBox ID="CheckBox4" runat="server" /> File 4</li>
<li> </li>
<li>
<asp:Button ID="btnZipAndDownload" runat="server" Text="Zip And Download" OnClick="Download"/>
<asp:Button ID="btnCancelDownload" runat="server" Text="Cancel" />
</li>
</ul>
</asp:Panel>
<asp:ModalPopupExtender ID="ModalPopupDownload" runat="server"
PopupControlID="DownLoadForm"
TargetControlID="btnDownloadFiles"
CancelControlID="btnCancelDownload"
OkControlID="btnZipAndDownload" >
</asp:ModalPopupExtender>
コードビハインドのサブは「ダウンロード」です
Protected Sub Download(ByVal sender As Object, ByVal e As System.EventArgs)
Try
Dim FileName As String = "~/Mock_Files.zip"
Response.AddHeader("Content-disposition", "attachment; filename=Mock_Borrower_Files.zip")
Response.ContentType = "application/zip"
Response.WriteFile(FileName, False)
Catch ex As Exception
Foo
Foo too
End Try
Response.End()
End Sub