모달 팝업 창에 Microsoft AjaxControlToolkit을 사용하고 있습니다.포스트 백에서 모달 팝업 창 (ModalPopupExtender)이 닫히지 않게하려면 어떻게합니까?
모달 팝업 창에서 다시 게시가 발생하면 창이 닫힙니다. 모달 팝업창의 닫는 동작을 어떻게 막을 수 있습니까?
모달 팝업 창에 Microsoft AjaxControlToolkit을 사용하고 있습니다.포스트 백에서 모달 팝업 창 (ModalPopupExtender)이 닫히지 않게하려면 어떻게합니까?
모달 팝업 창에서 다시 게시가 발생하면 창이 닫힙니다. 모달 팝업창의 닫는 동작을 어떻게 막을 수 있습니까?
당신은
MyModalPopoupExtender.Show()
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack)
{
// reshow
MyModalPopup.Show()
}
}
을 닫는 모달 팝업 창을 방지하기 위해 다시 게시하는 동안 Show()
메서드를 호출 할 수 있습니다 같아요 작품이 있지만 내 경우이다. 모달 팝업에서 연 사용자 컨트롤이 있는데이 사용자 정의 컨트롤은 포스트 백을 만듭니다. 그래서 그 사용자 컨트롤에 모달 팝업 속성이 없습니다.
제 생각에는 사용자 컨트롤을위한 이벤트를 만들고 모달 팝업을 여는 페이지는이 이벤트에서 다시 열어야합니다.
모달 팝업은 클라이언트 측에서만 사용할 수 있습니다. 예를 들어 포스트 백 중에 정보를 수집 할 수는 있지만 다시 게시하면 100 % 시간을 숨길 수 있습니다.
물론 다른 제안처럼 포스트 백 중에 .show를 할 수 있지만 수행해야하는 작업에 따라 다릅니다.
사실, 일부 유효성 검사를 위해 클라이언트 측에서 수행하려는 경우 왜 다시 게시가 필요한지 알 수 없습니다.
왜 다시 게시해야하는지 알려주세요. 더 잘 도와 줄 수 있습니다. :)
안녕하세요, 귀하의 답변 주셔서 감사합니다.하지만 문제가 실제로 기억 나지 않습니다. –
하하하! ok then XD 괜찮 으면 해결책을 게시 할 수 있습니다 (atm이 작동하는 방식). 나는이 사건에 대해 매우 궁금해서 어떻게 할 수 있는지보고 싶습니다! – ForceMagic
이전 사례 다음 ...
Simple.aspx에서 사용자는 회사 이름을 입력해야합니다. 사용자가 회사의 이름을 기억하지 못하면 버튼을 클릭하여 팝업 창을 열 수 있습니다.
내가 모달 창에서 원하는 것은 사용자가 회사 목록을 검색하는 것을 허용하는 것입니다. 그는 부분 이름을 입력하고 검색을 클릭 할 수 있습니다. 일치 항목은 아래 목록에 표시됩니다. 그는 목록의 항목을 클릭하여 돌아올 수 있습니다. 회사가 없으면 '새로 만들기'버튼을 클릭하여 새 회사를 만들 수 있습니다.
여러분도 알다시피이 모달 창에서 많은 기능을 원합니다.
감사합니다!
JC
이 경우 사용자 컨트롤에서 부모 페이지에 사용자 지정 이벤트를 정의하면 모달 팝업을 열 수있는 코드도 작성됩니다. –
사용자가 컨트롤 패널에 컨트롤을 넣습니다. 이것은 당신 :
안부를위한 일을 할 것입니다
<asp:Panel ID="pnlControls" runat="server">
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="TestButton" runat="server" Text="Test Button" onclick="TestButton_Click" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
, 그레고르 PRIMAR
: 내 샘플 코드를 참조하십시오, pnlControls 팝업에 표시됩니다 컨트롤을 보유하고 컨트롤입니다잘 작동합니다. 필요한 경우 모달에 전체 컨트롤 집합을 래핑하여 다른 UpdatePanels에 대한 트리거로 더 많은 UpdatePanels를 만들 필요가 없도록 할 수 있습니다. – atconway
포스트 백 중에 모달을 열어 두는 것과 같은 문제가있었습니다.
내 솔루션 :
사용의 EventTarget이 다시 게시가 모달의 컨트롤에서 오는 여부를 결정하고 있는지 개방 모델을 유지합니다. 모달이 열려있는 경우 다시 게시는 모달의 컨트롤에서 가져올 수 있습니다.
모달을 포함하는 페이지 컨트롤의로드 이벤트에서. 포스트 백이 의 자식인지 확인합니다. 모달 패널에있는 컨트롤에 있는지 확인합니다.
Protected Sub Control_Load(sende As Object, e As EventArgs) Handles Me.Load
If IsPostBack Then
Dim eventTarget As String = Page.Request.Params.Get("__EventTarget")
Dim eventArgs As String = Page.Request.Params.Get("__EventArgument")
If Not String.IsNullOrEmpty(eventTarget) AndAlso eventTarget.StartsWith(Me.UniqueID) Then
If eventTarget.Contains("$" + _credentialBuilder.ID + "$") Then
' Postback from credential builder modal. Keep it open.
showCredentialBuilder = True
End If
End If
End If
End Sub
사전 렌더링에서 내 플래그를 확인하고 수동으로 모달에게
Protected Sub Control_PreRender(ByVal sende As Object, ByVal e As EventArgs) Handles Me.PreRender
If showCredentialBuilder Then
_mpeCredentialEditor.Show()
End If
End Sub
알리 hocam, 마일 bulabildin Bunun 양방향 çaresini을 보여줍니다. Ben de aynı dertten muzdaribim. –