您的位置:首页 > 移动开发 > Objective-C

在GridView中应该用分页、编辑、删除、更新操作

2008-03-31 20:44 856 查看

 

ASPX

<asp:GridView ID="gvwDepartments" runat="server" OnRowCancelingEdit="gvDepartment_RowCancelingEdit"
                OnRowEditing="gvDepartment_RowEditing" OnRowUpdating="gvDepartment_RowUpdating"
                OnRowDeleting="gvDepartment_RowDeleting">
                <Columns>
                    <asp:TemplateField HeaderText="部门名称">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtDepName" runat="server" Text='<%# Bind("Name") %>'></asp:TextBox>
                            <asp:RequiredFieldValidator ID="rfvDepartment" runat="server" ControlToValidate="txtDepName"
                                ErrorMessage="请填写部门名称。"></asp:RequiredFieldValidator>
                            <asp:HiddenField ID="hfID" runat="server" Value='<%# Bind("ID") %>' />
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:Label ID="Label1" runat="server" Text='<%# Bind("Name") %>'></asp:Label>
                            <asp:HiddenField ID="hfID" Value='<%# Bind("ID") %>' runat="server" />
                        </ItemTemplate>
                        <ItemStyle Width="400px" />
                    </asp:TemplateField>
                    <asp:TemplateField ShowHeader="False">
                        <EditItemTemplate>
                            <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="True" CommandName="Update"
                                Text="更新"></asp:LinkButton>
                            <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Cancel"
                                Text="取消"></asp:LinkButton>
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Edit"
                                Text="编辑"></asp:LinkButton>
                            <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Delete"
                                Text="删除" OnClientClick="return confirm('确定删除该部门信息吗?');"></asp:LinkButton>
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>

要注意的是这几个事件一定不可少
分页:OnPageIndexChanging
编辑:OnRowEditing
更新:OnRowUpdating
退出编辑:OnRowCancelingEdit
删除:OnRowDeleting

在后台类中对其进行定义,实现事件的操作。(下面是.CS文件)



    protected void Page_Load(object sender, EventArgs e)




    

{


        if(!Page.IsPostBack)


             Bind();       


        


     }


    protected void Button1_Click(object sender, EventArgs e)




    

{


         SMoney s = new SMoney();


         s.ID = 0;


         s.UserID = int.Parse("1");


         s.S_Money = int.Parse(TextBox2.Text);


         s.S_Bak = TextBox3.Text;


         s.DataTime = DateTime.Now;


         SqlCom uc = new SqlCom();


         uc.MoneyInto(s);




         Response.Redirect("SrMoney.aspx", true);


     }


    //绑定分页


    protected void PageIndexChang(object sender, System.Web.UI.WebControls.GridViewPageEventArgs e)




    

{


         GridView1.PageIndex = e.NewPageIndex;


         Bind();


     }




    //点击更新后的效果


    protected void gvDepartment_RowEditing(object sender, GridViewEditEventArgs e)




    

{


         BeginEditDepartment(e.NewEditIndex);


     }




    protected void gvDepartment_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)




    

{


         CancelEditDepartment();


     }


    private void BeginEditDepartment(int rowIndex)




    

{


         GridView1.EditIndex = rowIndex;


         Bind();


     }


    private void CancelEditDepartment()




    

{


         GridView1.EditIndex = -1;


         Bind();


     }




    //更新内容


    protected void gvDepartment_RowUpdating(object sender, GridViewUpdateEventArgs e)




    

{


        if (IsValid)




        

{


             UpdateDepartment(e.RowIndex);


         }


     }


    //删除内容


    protected void gvDepartment_RowDeleting(object sender, GridViewDeleteEventArgs e)




    

{


        //DeleteDepartment(e.RowIndex);


     }




    private void UpdateDepartment(int rowIndex)




    

{


         GridViewRow row = GridView1.Rows[rowIndex];


         SMoney up = new SMoney();


         HiddenField hfID = (HiddenField)row.Cells[0].FindControl("hfID");


         TextBox upTextBox = (TextBox)row.Cells[0].FindControl("upTextBox");


         up.ID = int.Parse(hfID.Value.ToString());


         up.S_Money = int.Parse("333");


         up.S_Bak = upTextBox.Text.Trim();


        try




        

{


             SqlCom upd = new SqlCom();


             upd.MoneyUpdate(up);


         }


        catch (Exception ex)




        

{


            return;


         }


         GridView1.EditIndex = -1;


         Bind();


     }




    private void Bind()




    

{


         SqlCom sc = new SqlCom();


         DataSet ds = sc.MoneySelect();


         GridView1.DataSource = ds;


         GridView1.DataBind();


     }

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息