【问题标题】:Devexpress grid - PerformCallback generates Invalid viewstateDevexpress 网格 - PerformCallback 生成无效的视图状态
【发布时间】:2023-03-19 18:16:01
【问题描述】:

我有一个 DevExpress 网格,每次更改组合框中的值时都需要刷新它。例如,我有一个组合框来设置网格的页面大小。其中一项要求是组合框不会导致完整的回发。

组合框声明如下:

    <asp:DropDownList ID="cboPages" AutoPostBack="false" runat="server" 
EnableViewState="false" OnSelectedIndexChanged="cboPages_SelectedIndexChanged" />

在选定的索引更改时,它会设置一个 cookie,其值为选定的值。当组合框的值发生变化时,会调用一个 javascript 函数:

function PerformCallbackOnGrid(grid) {
    try {
        grid.PerformCallback("refresh");
    }
    catch(err){
        alert('Could not perform callback on grid.');
    }
}

函数附在代码后面:

this.cboPages.Attributes["onChange"] = "PerformCallbackOnGrid(" + this.GridClientID + ")";

执行这些步骤后:

  1. 用户使用组合框更改网格页面大小,因此 PerformCallback 至少被调用一次。
  2. 用户按 F5(刷新)。
  3. 用户再次尝试更改页面大小。

出现“无效的视图状态”错误消息。

我尝试将网格的 ViewStateMode 设置为 Disabled,同样 EnableViewState="false"。

【问题讨论】:

    标签: asp.net viewstate devexpress aspxgridview


    【解决方案1】:

    我自己想出来的!显然设置就足够了

    EnableViewState="false" EnableRowsCache="false"
    

    到网格。

    行缓存是导致视图状态错误的原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-10
      • 1970-01-01
      • 2017-02-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多