2016-11-29 62 views
-1

我有一個gridview,gridview數據是從database.I有一個最後一列,這是asp:FileUpload供用戶插入新的附件,如果他們想,我想這裏做的事情是,我的後端c#將檢查asp行文件上傳是否爲空,然後將新版本上傳到該form.if爲空,不要將新版本上傳到該表單。Gridview檢查每一行並更新

<asp:TemplateField HeaderText="Upload New Form" HeaderStyle-BackColor="DarkBlue" HeaderStyle-Font-Bold="false" HeaderStyle-ForeColor="White" ItemStyle-Width="5%"> 
     <ItemTemplate> 
      <asp:FileUpload ID="newdoc" runat="server"/> 
     </ItemTemplate> 
</asp:TemplateField> 

enter image description here

這是我的用戶創建插入新的文件,如果他們想要的列。

protected void Button11_Click(object sender, EventArgs e) 
{ 
    //System.Diagnostics.Debugger.Launch(); 
    string data = ""; 
    foreach (GridViewRow row in GridView3.Rows) 
    { 
     if (row.RowType == DataControlRowType.DataRow) 
     { 
      FileUpload chkRow = (row.Cells[7].FindControl("newdoc") as FileUpload); 
      if (FileUploadControl.HasFile) 
      { 
       string id = row.Cells[2].Text + '-'+row.Cells[3].Text; 
       data = data + id + ","; 
      } 
     } 
    } 
    string[] alldata = data.Split(','); 
    foreach (string dataid in alldata) 
    { 
     if (dataid.Equals("")) 
      continue; 
     ClientScript.RegisterStartupScript(GetType(), "alert", "alert('" + dataid + "');", true); 
    } 
} 

我的C#的邏輯是這樣的,我會檢查每一行,如果uploadcontrol是不是空的,則不要將ID添加到數據列表,收集需要更新新的版本,我會分裂的所有行後列表更新它1 1,我試圖提醒出來的ID,但我得到的價值empty.any的想法,我做錯了? 我在這一行暫停了一些錯誤「string id = row.Cells [2] .Text +' - '+ row.Cells [3] .Text;」使用,而不是

回答

0

的BoundField的TemplateField ..

串測試= row.Cells [2]。文本;