您的位置:首页 > 其它

使用DataList实现 加入购物车,编辑,删除,更新,取消功能

2012-12-18 16:08 961 查看
****************************Demo.aspx

   <form id="form1" runat="server">

    <div>

   

        <asp:DataList ID="DataList1" runat="server"

            oneditcommand="DataList1_EditCommand" onitemcommand="DataList1_ItemCommand"

            onupdatecommand="DataList1_UpdateCommand"

            ondeletecommand="DataList1_DeleteCommand">

            <EditItemTemplate>

                <table style="width:100%;">

                    <tr>

                        <td class="style1">

                            姓名</td>

                        <td>

                            <asp:TextBox ID="txtname" runat="server" Text='<%# Eval("sname") %>'></asp:TextBox>

                        </td>

                    </tr>

                    <tr>

                        <td class="style1">

                            性别</td>

                        <td>

                            <asp:TextBox ID="txtsex" runat="server" Text='<%# Eval("sex") %>'></asp:TextBox>

                        </td>

                    </tr>

                    <tr>

                        <td class="style1">

                            年龄</td>

                        <td>

                            <asp:TextBox ID="txtage" runat="server" Text='<%# Eval("age") %>'></asp:TextBox>

                        </td>

                    </tr>

                    <tr>

                        <td class="style1">

                            <asp:Button ID="update" runat="server" CommandArgument='<%# Eval("sid") %>'

                                CommandName="update" Text="更新" Width="40px" />

                        </td>

                        <td>

                            <asp:Button ID="Bucancel" runat="server" CommandName="cancel" Text="取消" />

                        </td>

                    </tr>

                </table>

            </EditItemTemplate>

            <ItemTemplate>

                姓名:<asp:Label ID="Label1" runat="server" Text='<%# Eval("sname") %>'></asp:Label>

                <br />

                <br />

                年龄:<asp:Label ID="Label2" runat="server" Text='<%# Eval("age") %>'></asp:Label>

                <br />

                <br />

                性别:<asp:Label ID="Label3" runat="server" Text='<%# Eval("sex") %>'></asp:Label>

                <br />

                <br />

                <asp:Button ID="btnedit" runat="server" CommandName="edit" Height="21px"

                    Text="编辑" />

                 <asp:Button ID="btndelete" runat="server" CommandArgument='<%# Eval("sid") %>'

                    CommandName="delete" Text="删除" />

                <br />

                <br />

                <asp:Button ID="Button1" runat="server" CommandArgument='<%# Eval("sid") %>'

                    CommandName="buy" Text="加入购物车" />

                <br />

            </ItemTemplate>

        </asp:DataList>

   

    </div>

    </form>

*****************************

****************************Demo.aspx.cs

 

namespace DataList

{

    public partial class Demo : System.Web.UI.Page

    {

        protected void Page_Load(object sender, EventArgs e)

        {

            if(!IsPostBack )

            {

               bindData();

            }

        }

        private void bindData()

        {

            string sql = "select * from student";

            DataTable dt = sqlhelp.Executedatatable(sql);

            this.DataList1.DataSource = dt;

            this.DataList1.DataBind();

        }

        protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)

        {

            if (e.CommandName == "buy")

            {

                Response.Write(e.CommandArgument .ToString ());

            }

        }

        protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)

        {

            this.DataList1.EditItemIndex = e.Item.ItemIndex;

            this.bindData();//重新在绑一次

        }

        protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e)

        {

            string name = (e.Item.FindControl("txtname") as TextBox).Text;

            string sex = (e.Item.FindControl("txtsex") as TextBox).Text;

            string age = (e.Item.FindControl("txtage") as TextBox).Text;

            string sql = "update student set
sname=@name,sex=@sex,age=@age where sid=@sid";

            SqlParameter[] pms = new SqlParameter[]

           {

               new SqlParameter ("@name",name ),

               new SqlParameter ("@sex",sex ),

               new SqlParameter ("@age",age ),

               new SqlParameter ("@sid",e.CommandArgument )

            

           };

            sqlhelp.ExcuteNonQuery(sql,pms);

        }

        protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)

        {

            this.DataList1.EditItemIndex = -1;//谁也不编辑了

            this.bindData();//再重新绑定一下

        }

        protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e)

        {

            string sql = "delete from student where sid=@sid" ;

            SqlParameter pm = new SqlParameter("@sid",e.CommandArgument );

            sqlhelp.ExcuteNonQuery(sql,pm);

            this.bindData();

        }

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