4
我有一個DevExpress網格需要刷新每次更改組合框中的值。例如,我有一個組合框設置網格的頁面大小。其中一個要求是組合框不會導致完整的回發。Devexpress網格 - PerformCallback生成無效的視圖狀態
組合框聲明如下:
<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 + ")";
執行這些步驟後頁面大小使用組合框,因此PerformCallback至少調用一次。
- 用戶按下F5(刷新)。
- 用戶嘗試再次更改頁面大小。
出現'無效視圖狀態'錯誤消息。
我已經嘗試將ViewStateMode設置爲禁用網格,也EnableViewState =「false」。