public partial class _Default : System.Web.UI.Page 
{
    string ConnStr = "Data Source=PC-201002260947;Initial Catalog=class;Integrated Security=True";
    int a;
    protected void Page_Load(object sender, EventArgs e)
    {
        bind();
      
    }
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        SqlConnection conn = new SqlConnection(ConnStr);
        conn.Open();
        SqlCommand comm = new SqlCommand();
        comm.Connection = conn;        comm.CommandText="delete student where 学号="+ Convert.ToInt32( GridView1.DataKeys[e.RowIndex].Value)+"";
       
        int a=comm.ExecuteNonQuery();
        bind();
    }
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex=e.NewPageIndex;
        GridView1.DataBind();
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        GridView1.EditIndex = e.NewEditIndex;
        GridView1.DataBind();
    }    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
      SqlConnection conn = new SqlConnection(ConnStr);        conn.Open();
        SqlCommand comm = new SqlCommand();
        comm.Connection = conn;
        comm.CommandText = "update student set 学号='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim() + "',姓名='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',成绩='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',性别='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where 学号="+ Convert.ToInt32( GridView1.DataKeys[e.RowIndex].Value)+"";
        a=comm.ExecuteNonQuery();
        GridView1.EditIndex = -1;
        
      
    }
    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        GridView1.EditIndex = -1;
        GridView1.DataBind();
    }
    public void bind()
    {
        SqlConnection conn = new SqlConnection(ConnStr);        conn.Open();        SqlDataAdapter ad = new SqlDataAdapter("select * from student", conn);        DataSet ds = new DataSet();
        ad.Fill(ds);
        GridView1.Caption = "学生成绩列表";
        GridView1.DataSource = ds;
        GridView1.DataBind();
        conn.Close();
        Response.Write(a);
    }
   
}更新事件应该是执行了,因为点更新后A变成1,说明有执行呀,但是数据就是不变,而且数据库也没反应  55555 怎么办

解决方案 »

  1.   

    把Page_Load事件改一下: protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                bind();
            }
        }
    另外在protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {...
    bind();
    }
      

  2.   

      if (!IsPostBack)
            {
                bind();
            }
    GridView1.EditIndex = -1;
    bind();
    GridView1.PageIndex=e.NewPageIndex;
    bind();
      

  3.   

    不行呀,改了还是不行,加了那个以后, 点编辑 gridview控件直接没有了啊
      

  4.   

    前台:<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False"
                    DataSourceID="ObjectDataSource1" DataKeyNames="ComOrg_ID,CO_State" CellPadding="3"
                    ForeColor="#333333" Width="100%" PageSize="20" OnPageIndexChanging="GridView_PageIndexChanging"
                    OnRowDataBound="GV1_RowDataBound" OnRowCommand="GV1_RowCommand" OnRowUpdating="GV1_RowUpdating">
                    <Columns>
                        <asp:TemplateField HeaderText="部门名称" SortExpression="ComOrg_Name">
                            <EditItemTemplate>
                                &nbsp;<asp:TextBox ID="txtName" UpdateComOrg="co_name" runat="server" Text='<%# Eval("ComOrg_Name") %>'
                                    Width="80%"></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <%# Eval("ComOrg_Name") %>
                            </ItemTemplate>
                            <HeaderStyle Width="30%" />
                            <ItemStyle CssClass="ThTitle" HorizontalAlign="Left" />
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="序号" SortExpression="CO_Order">
                            <EditItemTemplate>
                                <asp:TextBox ID="txtOrder" UpdateComOrg="co_order" Style="width: 50px" runat="server"
                                    Text='<%# Eval("CO_Order") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <%# Eval("CO_Order") %>
                            </ItemTemplate>
                            <HeaderStyle Width="8%" />
                            <ItemStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="缩写" SortExpression="CO_Mark">
                            <EditItemTemplate>
                                <asp:TextBox ID="txtEMark" Style="width: 70px" runat="server"
                                    Text='<%# Eval("CO_Mark") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <%# Eval("CO_Mark") %>
                            </ItemTemplate>
                            <HeaderStyle Width="9%" />
                            <ItemStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="状态" SortExpression="CO_State">
                            <EditItemTemplate>
                                <asp:DropDownList ID="ddlState" runat="server">
                                    <asp:ListItem Text="正常" Value="1"></asp:ListItem>
                                    <asp:ListItem Text="停用" Value="0"></asp:ListItem>
                                </asp:DropDownList>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <%# ((int)Eval("CO_State")==1) ? "正常" : "<span style='color:red;'>已停用</span>" %>
                            </ItemTemplate>
                            <HeaderStyle Width="8%" />
                            <ItemStyle CssClass="ThTitle" HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="操作">
                            <EditItemTemplate>
                                <div class="Link_Center" style="margin-top: 10px;">
                                    <asp:LinkButton ID="btnUpdateComOrg" ActionName="UpdateComOrg" runat="server" CausesValidation="True"
                                        CommandName="Update" Text="更新" />&nbsp;
                                    <asp:LinkButton ID="Button2" runat="server" CausesValidation="False" CommandName="Cancel"
                                        Text="取消" />
                                </div>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <div class="Link_Center" style="margin-top: 10px; padding-left:3px;">
                                    <asp:LinkButton ID="Button1" runat="server" CausesValidation="False" CommandName="Edit"
                                        Text="编辑"></asp:LinkButton>
                                    <asp:LinkButton ID="btnRejected" Text="暂停" CommandName="stop" runat="server" Visible='<%#(int)Eval("CO_State") == 1 %>'
                                        CommandArgument='<%# Eval("ComOrg_ID") %>'></asp:LinkButton>
                                    <asp:LinkButton ID="btnAccepted" Text="启用" CommandName="resume" runat="server" Visible='<%#(int)Eval("CO_State") == 0 %>'
                                        CommandArgument='<%# Eval("ComOrg_ID") %>'></asp:LinkButton>
                                    <asp:LinkButton ID="btnDeleted" Text="删除" CommandName="orgdel" runat="server" CommandArgument='<%# Eval("ComOrg_ID") %>'
                                        OnClientClick="return confirm('确定删除该部门?');"></asp:LinkButton>
                                    <a href='AD_ComOrgUserList.aspx?Com_ID=<%= Com_ID %>&ComOrg_ID=<%#Eval("ComOrg_ID") %>' target="_blank">管理部门职员</a>
                                    <a href='AD_AssignComOrgPowerSystem.aspx?ComOrg_ID=<%#Eval("ComOrg_ID") %>' target="_blank">分配权限模块</a>
                                    <a href='AD_OrgManager.aspx?Com_ID=<%#Eval("Com_ID") %>&Parent_ID=<%#Eval("ComOrg_ID") %>'>下级</a>
                                </div>
                            </ItemTemplate>
                            <HeaderStyle Width="47%" />
                        </asp:TemplateField>
                    </Columns>
                    <RowStyle BackColor="#EFF3FB" />
                    <PagerStyle CssClass="Link_Right" BackColor="#EFF3FB" Height="30px" />
                    <HeaderStyle BackColor="#507CD1" Height="30px" CssClass="TitleWhite_14" />
                    <AlternatingRowStyle BackColor="White" />
                    <PagerSettings Mode="NumericFirstLast" />
                    <PagerTemplate>
                        <table width="100%">
                            <tr>
                                <td>
                                    第<asp:Label ID="lbl_PageIndex" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex + 1  %>' />页
                                    / 共<asp:Label ID="lbl_PageCount" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageCount  %>' />页
                                    <asp:LinkButton ID="btn_First" runat="server" CausesValidation="False" CommandArgument="First"
                                        CommandName="Page" Text="首页" />
                                    <asp:LinkButton ID="btn_Prev" runat="server" CausesValidation="False" CommandArgument="Prev"
                                        CommandName="Page" Text="上一页" />
                                    <asp:LinkButton ID="btn_Next" runat="server" CausesValidation="False" CommandArgument="Next"
                                        CommandName="Page" Text="下一页" />
                                    <asp:LinkButton ID="btn_Last" runat="server" CausesValidation="False" CommandArgument="Last"
                                        CommandName="Page" Text="尾页" />
                                    <asp:TextBox ID="txt_NewPageIndex" runat="server" Width="20px" Text='<%# ((GridView)Container.Parent.Parent).PageIndex + 1  %>' />
                                    <asp:LinkButton ID="btn_Go" runat="server" CausesValidation="False" CommandArgument="-1"
                                        CommandName="Page" Text="GO" />
                                </td>
                            </tr>
                        </table>
                    </PagerTemplate>
                    <EmptyDataTemplate>
                        <div style="margin: 10px 0px 10px 10px;">
                            暂无任何部门!</div>
                    </EmptyDataTemplate>
                </asp:GridView>
                <asp:Panel ID="Panel1" runat="server">后台:protected void GV1_RowUpdating(object sender, GridViewUpdateEventArgs e)
            {
                AD_ComOrg co = new AD_ComOrg();
                co.Com_ID = Com_ID;
                co.CO_State = Convert.ToInt32(((DropDownList)GridView1.Rows[e.RowIndex].FindControl("ddlState")).SelectedValue);
                co.CO_ParentId = ComOrg_ID;
                co.CO_Order = Convert.ToInt32(((TextBox)GridView1.Rows[e.RowIndex].FindControl("txtOrder")).Text);
                co.ComOrg_ID = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Values[0]);
                co.ComOrg_Name = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("txtName")).Text;
                co.CO_Mark = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("txtEMark")).Text;
                BAD_ComOrg.Update(co);
                GridView1.DataBind();
                GridView1.EditIndex = -1;
                e.Cancel = true;
            }仅供参考!!!
      

  5.   


    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                this.bind();
            }
        }我的更新可以用了