首页 > 学院 > 开发设计 > 正文

DetailsView的添加,修改,删除,查询

2019-11-17 01:27:59
字体:
来源:转载
供稿:网友
DetailsView的添加,修改,删除,查询

前台代码:

<div>        <asp:DetailsView ID="gvDepart" runat="server" AutoGenerateRows="False" OnItemDeleting="gvDepart_ItemDeleting" OnItemInserting="gvDepart_ItemInserting" OnItemUpdating="gvDepart_ItemUpdating" OnModeChanging="gvDepart_ModeChanging" DataKeyNames="DepartId">            <Fields>                <asp:TemplateField>                    <EditItemTemplate>                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("DepartId") %>'></asp:TextBox>                    </EditItemTemplate>                    <InsertItemTemplate>                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("DepartId") %>'></asp:TextBox>                    </InsertItemTemplate>                    <ItemTemplate>                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("DepartId") %>'></asp:Label>                    </ItemTemplate>                </asp:TemplateField>                <asp:TemplateField>                    <EditItemTemplate>                        <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("DepartName") %>'></asp:TextBox>                    </EditItemTemplate>                    <InsertItemTemplate>                        <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("DepartName") %>'></asp:TextBox>                    </InsertItemTemplate>                    <ItemTemplate>                        <asp:Label ID="Label2" runat="server" Text='<%# Bind("DepartName") %>'></asp:Label>                    </ItemTemplate>                </asp:TemplateField>                <asp:TemplateField>                    <EditItemTemplate>                        <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("ParentId") %>'></asp:TextBox>                    </EditItemTemplate>                    <InsertItemTemplate>                        <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("ParentId") %>'></asp:TextBox>                    </InsertItemTemplate>                    <ItemTemplate>                        <asp:Label ID="Label3" runat="server" Text='<%# Bind("ParentId") %>'></asp:Label>                    </ItemTemplate>                </asp:TemplateField>                <asp:TemplateField HeaderText="操作" ShowHeader="False">                    <InsertItemTemplate>                        <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="True" CommandName="Insert" Text="插入"></asp:LinkButton>                        <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Cancel" Text="取消"></asp:LinkButton>                    </InsertItemTemplate>                    <ItemTemplate>                        <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="New" Text="新建"></asp:LinkButton>                        <asp:LinkButton ID="btnDelete" CausesValidation="false" CommandName="Delete"  CommandArgument='<%# Eval("DepartId") %>' Text="删除" runat="server" />                        <asp:LinkButton ID="btnUpdate" CausesValidation="false" CommandName="Edit" CommandArgument='<%# Eval("DepartId") %>' Text="修改" runat="server" />                    </ItemTemplate>                    <EditItemTemplate>                        <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="True" CommandName="Update" CommandArgument='<%# Eval("DepartId") %>'  Text="修改"></asp:LinkButton>                        <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Cancel" Text="取消"></asp:LinkButton>                    </EditItemTemplate>                   </asp:TemplateField>            </Fields>        </asp:DetailsView>    </div>

后台代码:

public partial class WebForm4 : System.Web.UI.Page    {        DepartmentInfoBLL bll = new DepartmentInfoBLL();        PRotected void Page_Load(object sender, EventArgs e)        {            if (Request.QueryString["departId"] == null) {                Response.Redirect("WebForm3.aspx");            }            if (!IsPostBack) {                InitDepart();            }        }        private void InitDepart()        {            int departId = int.Parse(Request.QueryString["departId"]);            IList<DepartmentInfo> list = bll.GetByDepartId(departId);            this.gvDepart.DataSource = list;            this.gvDepart.DataBind();        }        protected void gvDepart_ItemUpdating(object sender, DetailsViewUpdateEventArgs e)        {            int departId = int.Parse(e.CommandArgument.ToString());            string departName = (this.gvDepart.Rows[1].FindControl("TextBox2") as TextBox).Text;            int parentId =int.Parse((this.gvDepart.Rows[2].FindControl("TextBox3") as TextBox).Text);            //执行修改的方法            bll.Update(new DepartmentInfo() { DepartId=departId,DepartName=departName,ParentId=parentId,Remark=""});            //返回到只读模式            this.gvDepart.ChangeMode(DetailsViewMode.ReadOnly);            //重新绑定数据            InitDepart();        }        protected void gvDepart_ItemInserting(object sender, DetailsViewInsertEventArgs e)        {            int departId = int.Parse((this.gvDepart.Rows[0].FindControl("TextBox1") as TextBox).Text);            string departName = (this.gvDepart.Rows[1].FindControl("TextBox2") as TextBox).Text;            int parentId = int.Parse((this.gvDepart.Rows[2].FindControl("TextBox3") as TextBox).Text);            //执行添加的方法            bll.Insert(new DepartmentInfo() { DepartId=departId,DepartName=departName,ParentId=parentId,Remark=""});            //跳转到转到详情页面的前面一个页面            Response.Redirect("~/WebForm3.aspx");        }        protected void gvDepart_ItemDeleting(object sender, DetailsViewDeleteEventArgs e)        {            int departId = int.Parse(e.Keys[0].ToString());            //执行删除的方法            bll.DeleteByDepartId(departId);            //跳转到转到详情页面的前面一个页面            Response.Redirect("~/WebForm3.aspx");        }        protected void gvDepart_ModeChanging(object sender, DetailsViewModeEventArgs e)        {            //改变模式            this.gvDepart.ChangeMode(e.NewMode);            InitDepart();        }    }

  


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表