2012-05-06 2 views
0

У меня есть элемент управления DevExpress ASPxPopup на странице. Теперь я хочу показать это всплывающее окно, когда я нажимаю ссылку в строке меню, которая находится на главной странице.Показать элемент управления ASPxPopup, который находится на другой странице

Я могу получить доступ к всплывающей странице на главной странице с помощью мастера.FindControl(), но я не знаю, как получить доступ к всплывающей подсказке на дочерней странице.

+0

Почему бы вам не связаться с ребятами из DX по поводу ваших проблем? – Mikhail

ответ

2

Если вы знаете, что когда страница полностью загружена, то для ее работы доступна страница Master и дочерняя aspx-страница, отображаемая разметкой и скриптом html. Таким образом, вы можете получить доступ к popupControls на главной странице или в ChildPage.

Просто назначьте 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>` 

/// Child Page Markup

<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>` 

Примечание: Вы не можете потреблять контроль всплывающий в лучшую сторону с сервером сторона включает в себя, поэтому изучите обратные вызовы и callbackpanel и т. д., чтобы работать с клиентскими сценариями.

Надеюсь, что это поможет вам.

Смежные вопросы

 Смежные вопросы