2012-03-12 17 views
1

更新パネル内にグリッドビューが含まれています。グリッド内のボタンを使用してグリッドビューのレコードを編集し、パネルポストバック(__doPostBack)を更新すると、グリッドビュー用のデータセットを更新し、新しいデータソースでgriviewをリフレッシュしようとしますが、次のエラーが発生します。更新パネル内のGridViewをリフレッシュ

次のように私はすべてのアイデア、

gvwSearchResult.DataSource = dsP1.prSearchItem; 
gvwSearchResult.DataBind(); 
UpdatePanel1.Update(); 

Uncaught Sys.WebForms.PageRequestManagerServerErrorException: 
Sys.WebForms.PageRequestManagerServerErrorException: 
Invalid postback or callback argument. 
Event validation is enabled using <pages enableEventValidation="true"/> in configuration or 
<%@ Page EnableEventValidation="true" %> in a page. 
For security purposes, 
this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. 
If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or 
callback data for validation. 
Sys.WebForms.PageRequestManager._endPostBackScriptResource.axd:307 
Sys.WebForms.PageRequestManager._parseDeltaScriptResource.axd:749 
Sys.WebForms.PageRequestManager._onFormSubmitCompletedScriptResource.axd:584 
(anonymous function)ScriptResource.axd:22 
(anonymous function)ScriptResource.axd:1519 
Sys.Net.WebRequest.completedScriptResource.axd:2924 
_onReadyStateChange 

を私のGridViewのを再バインド?

+0

編集ボタンは自動生成ですか、それともテンプレートにありますか? – mslliviu

+0

テンプレートフィールド – Roshe

答えて

1

pageLoad内でgridviewをバインドしていますか?はいの場合は

をご確認ください
if(!Page.IsPostBack) 
{ 
    //Bind your gridview. 
} 

データバインドの前にコントロールが再生成されている可能性があります。これは、削除操作の前にコントロールをバインドしている場合に発生します。 pageLoad &のコードをボタンイベントの下にもチェックしてください。最後のデータは、&の間にのみバインドされます。

+0

私は更新パネルの負荷内にバインドしています protected void UpdatePanel1_Load(オブジェクト送信者、EventArgs e) {} – Roshe

+0

更新された返信を確認してください。 –

1

このエラーは、EventValidationが失敗したために発生しています。以下のスレッドは、そのような例外をデバッグする方法を示しています。

Conditional update panel

+0

はい。私はupdatepanelを更新し、私のグリッドは更新パネルの中にあります。 – Roshe

0

あなたのボタンがfalseにUseSubmitBehaviourプロパティを設定していることを確認してください。入力タイプ= "ボタン"としてレンダリングする必要があります。理由はわかりませんが、私にとってこの変更はうまくいきました..

0

私はEnableEventValidation = "false"を設定しました。しかし、それを行う正しい方法がわからない

関連する問題