2013-06-04 100 views
0

這裏是我的GridView:GridView控件模板按鈕

<asp:GridView ID="gvconsumer" runat="server" AutoGenerateColumns="False" Width="50%" > 
     <Columns> 
      <asp:TemplateField HeaderText=""> 
       <ItemTemplate> 
        <asp:Label ID="lblid" runat="server" Text='<%# Bind("id") %>' Visible="false" ></asp:Label> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="Consumer"> 
       <ItemTemplate> 
        <asp:Label ID="lblconsumer" runat="server" Text='<%# Bind("FirstName") %>'></asp:Label> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="Name"> 
       <ItemTemplate> 
        <asp:Label ID="lblname" runat="server" Text='<%# Bind("LastName") %>'></asp:Label> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="Status"> 
       <ItemTemplate> 
        <asp:Label ID="lblstatus" runat="server" Text='<%# Bind("Status") %>'></asp:Label> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="DateCreated"> 
       <ItemTemplate> 
        <asp:Label ID="lbldatecreaterd" runat="server" Text='<%# Bind("DateCreated") %>'></asp:Label> 
       </ItemTemplate> 
      </asp:TemplateField> 

      <asp:TemplateField HeaderText=""> 
       <ItemTemplate> 
        <asp:Button ID="btnApprove" runat="server" Text="Approve" OnClick="btnApprove_Click" /> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText=""> 
       <ItemTemplate> 
        <asp:Button ID="btnReject" runat="server" Text="Reject" OnClick="btnApprove_Click" /> 
       </ItemTemplate> 
      </asp:TemplateField> 
     </Columns> 
    </asp:GridView> 

這裏的背後是我的代碼:(的AcceptButton)

if (btnApprove_Click) 
    GridViewRow row = ((Button)sender).Parent.Parent as GridViewRow; 

    string id = ((Label)row.FindControl("lblid")).Text; 
    Response.Write(row.RowIndex); 
    string ApprovedStatus = "Approved"; 

    string status = ClassBiller.ConsumerStatus(int.Parse(id), ApprovedStatus, DateTime.Now); 

這是我ConsumerStatus()數據層:

 string retUpdateStatus = ""; 

     string consumerStatus = "UPDATE MerchantConsumer SET Status = @Status, DateAccepted = @DateAccepted WHERE ConsumerID = @Consumerid"; 

     string[] param = { "@Consumerid", "@Status", "@DateAccepted" }; 
     object[] paramVal = { ConsumerID, Status, DateAccepted }; 

     try 
     { 
      ClassDBQuery.ExecNonQuery(consumerStatus, param, paramVal); 
     } 
     catch (Exception ex) 
     { 
      throw ex; 
     } 

     return retUpdateStatus; 

這是如何綁定GridView:

DataTable gridViewConsumer = new DataTable(); 
    gridViewConsumer = ClassConsumer.GetRows(); 

    gvconsumer.DataSource = gridViewConsumer; 
    gvconsumer.DataBind(); 

我的問題是,我需要雙擊該按鈕,更新gridView..but的狀態字段當我檢查數據庫(在第一次單擊),狀態欄已經更新.. 幫助,請.. ..

回答

2

成功的數據庫操作後,您需要再次綁定網格。

+0

謝謝你,你是我的英雄... – aianLee