目前我的网站使用ajax:ModalPopupExtender将我的网格数据显示为弹出窗口,现在我想用Telerik RadWindow替换它以与网站的UI保持一致。
但是,我还没有办法做到这一点。因为ajax:ModalPopupExtender是服务器端而Radwindow是客户端。
有什么方法可以解决我的问题吗?
请给我一个建议。
场景:在我的网站中,有一个名为“mybutton”的按钮。当我点击它时,ajaxToolkit:ModalPopupExtender将在弹出窗口下显示我的数据。
以下是我的* .ascx文件中的代码:
<asp:LinkButton ID="myHiddenControl" runat="server" Text=""></asp:LinkButton>
<ajaxToolkit:ModalPopupExtender runat="server"
ID="myModalPopupExtender"
TargetControlID="myHiddenControl"
BehaviorID="programmaticModalPopup"
PopupControlID="myPanel"
BackgroundCssClass="modalBackground"
DropShadow="True"
RepositionMode="RepositionOnWindowScroll"
DynamicServicePath=""
Enabled="True">
</ajaxToolkit:ModalPopupExtender>
<asp:Panel runat="server"
CssClass="modalPopup"
ID="myPanel"
Style="width: 440px; height: 500px; padding: 10px;" meta:resourcekey="Resource2">
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table>
<!-- show my data in a table -->
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Panel>
这是vb代码
Protected Sub mybutton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles mybutton.Click
myModalPopupExtender.Show()
End Sub
答案 0 :(得分:0)
使用对话框的ContentTemplate并注册脚本以显示它。基本上
<telerik:RadWindow ID="RadWindow1" runat="server">
<ContentTemplate>
<asp:Panel runat="server"
CssClass="modalPopup"
ID="myPanel"
Style="width: 440px; height: 500px; padding: 10px;" meta:resourcekey="Resource2">
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table>
<!-- show my data in a table -->
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Panel>
</ContentTemplate>
</telerik:RadWindow>
和
Dim script As String = "function f(){$find(""" + RadWindow1.ClientID + """).show(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);"
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, True)