Radwindow在我改变组合框值的同时自动关闭

时间:2013-11-25 10:06:10

标签: telerik

我在telerik:radwindow中使用了usercontrol。

在父页面中使用radwindow。我在用户控制页面中使用了combobox控件。当组合框值发生变化时,radwindow会自动关闭。

我的代码在这里。

<telerik:RadWindowManager ID="radWinApproveforSite" runat="server">
      <Windows>
           <telerik:RadWindow ID="RadWinSiteApproval" align="center" Skin="Sunset" Style="text-align: center" Behaviors="Minimize, Maximize,Close" Modal="true"              ReloadOnShow="true" ShowContentDuringLoad="false" runat="server" Width="700" Height="565" VisibleOnPageLoad="false">
        <ContentTemplate>
               <div id="divPopup" style="height: 500px">
                      <table>
                           <tr>
                              <td>

                     <UC:SiteApprove ID="UCSiteApprove" runat="server"</UC:SiteApprove>


                              </td>
                           </tr>
                       </table>

                </div>
        </ContentTemplate>
        </telerik:RadWindow>
    </Windows>
</telerik:RadWindowManager>

我的组合框属性auotopostback = true。因为一个组合框与另一个组合框相关。我需要不关闭radwindow。谢谢提前.. :))

2 个答案:

答案 0 :(得分:1)

我猜你正在使用javascript打开radwindow。当使用javascript打开时,无论何时回发页面,visible的(RadWindow)状态都将恢复为之前回发页面时的状态。不幸的是,这意味着在RadWindow内回发可能会有问题;您可以在下拉列表发回时将VisibleOnPageLoad设置更改为true,但是这意味着如果在关闭RADwindow之后页面重新发布,它将重新打开这些postabacks,有很多方法为了解决这个问题,我的偏好将是以下之一:

  1. 最简单的方法是始终使用URL来定义RadWindow的内容,这样可以减少页面的视图状态和性能,因为它可以按需加载。
  2. 创建一个控件,表示RadWindow的可见性状态(例如checkbox),并在每次加载时确保将可见性设置为与此控件定义的设置相匹配。
  3. 请勿使用AutoPostBack,使用javascript更新第二个下拉列表,重新绑定结果或使用网络服务根据所选值进行填充。
  4. 还有其他修正可能会使用AjaxPanelAjaxManager,并且需要提供合理数量的代码。

答案 1 :(得分:0)

在内容模板中使用AJAX,或将UC移动到您将在RadWindow中加载的完整页面:http://www.telerik.com/help/aspnet-ajax/radwindow-ajaxifying.html。这只是在ContentTemplate中添加RadAjaxPanel的一行。

相关问题