2011-09-09 7 views
0

更新パネルにグリッドビューがあります。 HTTPレスポンスを使用してExcelにエクスポートし、必要なデータをエクスポートして、すべて正常に動作するポップアップでファイルを開くことができます。更新パネルのGridViewをExcelにエクスポートしてからグリッドをリフレッシュします。動作しません。

ただし、データをエクスポートしたら、これらのデータがエクスポートされたことを示すグリッドビューを更新する必要があります。正しいデータがデータソースに設定され、データバインドが呼び出されたことを確認しました。しかし、Excelの書き出しが画面をリフレッシュさせることはありません。

ドロップダウンを変更するなどしてリフレッシュをトリガーすると、データが変更されたことがわかります。私はUpdatePanelID.Update()を試してみました - まだ無駄です。

Excelをエクスポートした後にgridviewの更新をトリガーするにはどうすればいいですか?

ありがとうございます。

輸出のための私のコードは:あなたは«ポップアップ»呼び出す何

 var excelXml = GetExcelXml(dsInput, filename); 
     response.Clear(); 
     response.AppendHeader("Content-Type", "application/vnd.ms-excel"); 
     response.AppendHeader("Content-disposition", "attachment; filename=" + filename); 
     response.Write(excelXml); 
     response.Flush(); 

protected void btnExport_Click(object sender, EventArgs e) 
{ 
    try 
    { 

     if (list.Count() > 0) 
     { 


      ds.Tables.Add(dtForExport); 
      ExcelHelper.ToExcel(ds, filename); //To Excel method is described above. 
      LoadGridDetails();//Binds the new values 

     } 

    } 
    catch (Exception ex) 
    { 
     lblStatus.Text = "Error Exporting to Excel"; 
    } 
}//Screen is not refreshed after executing this line. 
+0

マークアップ(aspx)とコードビハインドはどうですか? :) –

+0

私はいくつかのコードを追加しました。 – franklins

答えて

1

、あなたがブラウザのダウンロードのポップアップについて話しているように私には思えます。 この場合、すでにResponse.Clearを実行しており、グリッドをリフレッシュすることができないため、動作しません。

実際のポップアップを開くことができます:window.popup、このポップアップはすべてのレスポンスジョブを実行するか、またはボタンの「エクスポート」にいくつかのJavaスクリプトを入れて2つのことをすることもできます:ポストバック機能をエクスポートし、Xミリ秒待機して、隠しボタンをクリックして2回目のポストバックを行い、リフレッシュします。

希望します。

関連する問題