1

向亲爱的同事们问好!

迅速的。

我这里有一个情况——有一个组件RadWindows RadButton 按钮就可以通过按下RadGrid 中的一个按钮将RadWindows 组件设置为Visible = true; 但是在 PostBack 和形状 RadWindows 之后消失了。但是进入 RadWindows 后,一切都保持不变,因为它被更改为重新启动。

问题:如何防止重新加载页面。

谁不知道 Rad Teleric 的组件是什么。

如果有帮助,源代码可以抛出。

谢谢,问候!

4

2 回答 2

1

设置 DestroyOnClose="true" 以防止窗口在关闭或回发后重新打开。听起来您可能正在使用服务器端代码将 Visible 属性设置为 true。这是一种不好的做法,会导致您描述的问题。RadWindows 应该通过客户端方法打开。

在服务器端使用此代码使用 RadWindow.Show 客户端方法从客户端打开一个窗口,同时将 DestoryOnClose 设置为 true。如果您想使用 RadWindow.Open() 方法将 url 传递给窗口,您可以自定义脚本字符串。

    private void ShowWindow()
    {
        string script = "function f(){$find(\"" + YourRadWindow.ClientID + "\").show(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);";
        ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, true);
    }
于 2013-11-22T16:43:02.703 回答
0

考虑用 JavaScript 打开它,这会让你停止使用这些不必要的回发:http ://www.telerik.com/help/aspnet-ajax/window-programming-opening.html 。使用 RadButton 的 OnClientClicking:http: //blogs.telerik.com/aspnet-ajax/posts/12-08-10/migrating-onclientclick-handlers-from-asp-button-to-telerik-s-asp-net- ajax 按钮.aspx

您还可以使用 AJAX 来防止将处理(并因此隐藏)RadWindow 的完整回发:http ://www.telerik.com/help/aspnet-ajax/radwindow-ajaxifying.html 。

如果需要,请阅读此便笺以了解如何从服务器打开它。如果您将 VisibleOnPageLoad 设置为 true,它将在回发后重新显示,因此您只需在需要时将属性设置回 false:http ://www.telerik.com/community/forums/aspnet- ajax/window/opening-radwindow-from-the-server.aspx

于 2013-11-26T14:25:15.757 回答