首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Telerik RadGrid在更换页面时消失了一秒

Telerik RadGrid在更换页面时消失了一秒
EN

Stack Overflow用户
提问于 2018-09-25 04:13:07
回答 1查看 406关注 0票数 0

我有Telerik RadGrid,我用存储过程中的一些数据填充它。

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    RadGrid2.DataSource = Utils_PA.GetData_From_SQl("SPname");
    RadGrid2.DataBind();
}

我有RadAjaxLoadingPanel和RadAjaxManager在页面上。

这是我的标记:

代码语言:javascript
复制
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="RadGrid2">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadGrid2" LoadingPanelID="RadAjaxLoadingPanel1" UpdatePanelCssClass="" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>

<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server"></telerik:RadAjaxLoadingPanel>
        <telerik:RadGrid ID="RadGrid2" EnableViewState="true" runat="server" AllowSorting="True" AllowPaging="True" PageSize="30"
            AllowFilteringByColumn="True" GroupPanelPosition="Top" CellSpacing="-1" GridLines="Both">
            <GroupingSettings CollapseAllTooltip="Collapse all groups"></GroupingSettings>
            <PagerStyle Mode="NextPrevNumericAndAdvanced" Position="TopAndBottom" PageSizeControlType="RadComboBox"></PagerStyle>
        </telerik:RadGrid>

对我来说一切都很好。但是,当我在网格上更改页面,或者使用过滤或排序时,网格会消失一秒钟,然后显示排序/过滤/新的页面数据。

所以,它是正确的,但是如何解决这个消失的问题呢?我尝试使用RadAjaxLoadingPanel,就像在show Loader的Telerik演示中一样。它可以工作,但不能修复网格的消失。

EN

回答 1

Stack Overflow用户

发布于 2018-09-27 03:36:01

我建议使用高级数据绑定方法,并在需要刷新网格时调用Rebind()方法:Advanced Data-binding (Using NeedDataSource Event)

代码语言:javascript
复制
<telerik:RadGrid ID="RadGrid2" runat="server" OnNeedDataSource="RadGrid2_NeedDataSource">
</telerik:RadGrid>
代码语言:javascript
复制
protected void RadGrid2_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
    RadGrid2.DataSource = Utils_PA.GetData_From_SQl("SPname");
}

注意:在使用高级数据绑定时,请避免调用Databind()方法。此外,千万不要在NeedDataSource事件中调用Rebind()方法,因为它将进入无限循环并使服务器崩溃。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52486688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档