2011-07-08 38 views
0

我正在談論ASP.NET Ajax控件工具包,GridView和AsyncFileUpload。我需要Ajax更新面板中的gridView綁定其新數據

我有一個UpdatePanel包含:GridView,AsyncFileUpload。

由asyncFileUpload上傳的gridView視圖fileNames。

當我完成上傳文件時,網格視圖不會綁定其新數據,直到我刷新。

我試過了:OnUploadCompleted事件中的gridView.DataBind(),但失敗了。

我想知道!我想要一條線在ajax裏面做回帖來查看新數據!

有什麼意義?

編輯:(代碼)

protected void btnUploadReport(object sender, EventArgs e) 
{ 
    if (fuReports.HasFile) 
    { 
     try 
     { 
      string newFileName = fuReports.FileName.Insert(fuReports.FileName.Length - 5, DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString()); 
      newFileName = Server.MapPath("~/Files/Reports/TextReports/") + newFileName; 
      fuReports.SaveAs(newFileName); 

      System.Collections.Specialized.ListDictionary item = new System.Collections.Specialized.ListDictionary(); 

      item.Add("project_id", Request.QueryString["pid"]); 
      item.Add("title", fuReports.FileName); 
      item.Add("type", "text"); 
      item.Add("url", newFileName); 

      ldsReports.Insert(item); // lds means LinqDataSource 

      grdReports.DataBind(); 

     } 
     catch (Exception ex) 
     { 
      Session["Message"] = ex.Message; 
      Response.Redirect("~/Message.aspx"); 
     } 
    } 
} 

回答

0

的DataBind已是遠遠不夠的。您需要首先使用您上傳的新文件名更新DataList,然後調用DataBind。

如果你在這裏展示的代碼,我可以給你一些更多的細節,但在這裏,這樣的情況下,數據將不更新你的GridView和爲什麼你不能看到他們

+0

感謝@Aristos,代碼這裏 –

+0

嘿@Aristos,我還在等你:) –

+0

@hashem grdReports.DataSource = ldsReports,就在數據綁定之前。 – Aristos