使用ContentURL属性的Aspxpopupcontorl - >是否可以通过服务器端按钮单击事件关闭窗口?

时间:2012-07-30 22:52:16

标签: devexpress

有没有人让这个工作过?

在过去的几年里,我已经多次研究过,并且从未找到解决这个问题的方法。我被要求今天再次发生这种情况。

contentURL属性基本上允许您创建另一个整个页面以用作popupcontrol。

我在此页面中有一个按钮,需要执行服务器端逻辑(保存数据),然后我希望它自动关闭窗口。

http://demos.devexpress.com/ASPxperienceDemos/PopupControl/ContentUrl.aspx

如果您不知道这是什么,上面是演示链接。

任何想法都会非常感激我似乎总是很难在他们的网站上找到信息。

2 个答案:

答案 0 :(得分:0)

protected void Button_Click(object  sender,  EventArgs e)
{
  string script = string.Format("<script type=\"text/javascript\"> HidePopUp(); </script>");
    ClientScript.RegisterStartupScript(Type.GetType("System.String"), "key", script);
}

c#以上 jscript下面

function HidePopUp() {
            var p = window.parent;
            var popup = p.window["testPopup"];
            popup.Hide();            
 }

终于在他们的网站上找到了一些东西。只需确保将testPopup替换为弹出控件的客户端名称。

答案 1 :(得分:0)

您可以使用AspxCallback控件。

您需要关闭AutoPostback。当用户按下按钮时,使用AspxCallback调用服务器端代码,然后如果服务器端代码成功完成,则应返回可以检查的状态,如果保存成功则关闭窗口。如果您返回的状态表明保存失败,那么您可以向用户显示一条消息并允许他们重试。