LinkButton.PostBackUrl を使用して別のページを POST に設定し、いくつかのクライアント スクリプトを使用して新しいウィンドウを取得します (そして、将来のポストバックが正常に機能するように古いターゲットが復元されます)。2 ページ目は、PreviousPage を使用して、元のページから必要な状態にアクセスできます。
<script runat="server">
void lnk_Click(object sender, EventArgs e) {
// Do work
}
</script>
<script type="text/javascript">
var oldTarget, oldAction;
function newWindowClick(target) {
var form = document.forms[0];
oldTarget = form.target;
oldAction = form.action;
form.target = target;
window.setTimeout(
"document.forms[0].target=oldTarget;"
+ "document.forms[0].action=oldAction;",
200
);
}
</script>
<asp:LinkButton runat="server" PostBackUrl="Details.aspx" Text="Click Me"
OnClick="lnk_Click"
OnClientClick="newWindowClick('details');" />