ページにDevExpressASPxPopupコントロールがあります。ここで、マスターページにあるメニューバーのリンクをクリックしたときにそのポップアップを表示したいと思います。
Master.FindControl()を使用してマスターページのポップアップにアクセスできますが、子ページのポップアップにアクセスする方法がわかりません。
ページにDevExpressASPxPopupコントロールがあります。ここで、マスターページにあるメニューバーのリンクをクリックしたときにそのポップアップを表示したいと思います。
Master.FindControl()を使用してマスターページのポップアップにアクセスできますが、子ページのポップアップにアクセスする方法がわかりません。
ページが完全に読み込まれると、マスターページと子aspxページでレンダリングされたhtmlマークアップとスクリプトを使用できることがわかっています。したがって、マスターページまたはチャイルドページのいずれかで両方のpopupControlsにアクセスできます。
Set ASPxPopupControl.ClientInstanceNameを割り当て、ボタンのクライアント側イベントを使用してポップアップを表示または非表示にするだけです。
次の作業例を確認してください。//マスターページのマークアップ
<head runat="server">
<title></title>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<dx:ASPxPopupControl ID="parentPopupControl" ClientInstanceName="parentPopup" runat="server">
<ContentCollection>
<dx:PopupControlContentControl runat="server" SupportsDisabledAttribute="True">this
is parent popup</dx:PopupControlContentControl>
</ContentCollection>
</dx:ASPxPopupControl>
<dx:ASPxHyperLink ID="hlnkShowChildPopup" runat="server" Text="Show Child Popup">
<ClientSideEvents Click="function(s, e) {
childPopup.Show();
}" />
</dx:ASPxHyperLink>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>`
///子ページのマークアップ
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<dx:ASPxPopupControl ID="childPopupControl" runat="server"
ClientInstanceName="childPopup">
<ContentCollection>
<dx:PopupControlContentControl runat="server" SupportsDisabledAttribute="True">this
is child popup control</dx:PopupControlContentControl>
</ContentCollection>
</dx:ASPxPopupControl>
<dx:ASPxHyperLink ID="hlnkShowParentPopup" runat="server" Text="Show Parent Popup">
<ClientSideEvents Click="function(s, e) {
parentPopup.Show();
}" />
</dx:ASPxHyperLink>
</asp:Content>`
注:サーバーサイドインクルードを使用してポップアップコントロールをより適切に使用することはできないため、クライアントサイドスクリプトを機能させるには、コールバックやコールバックパネルなどについて学習してください。
これがお役に立てば幸いです。
これはクライアント側で実装できます。ASPxPopupControlを設定します。ClientInstanceName。次に、ShowやShowWindowなどのポップアップコントロールクライアント側メソッドを使用します。