欢迎大家访问我的BLOG,我会多多的出原创文章,希望大家支持我,为我祈祷,让我实现我的三个梦想!再30岁能成为一个名优秀的软件架构师!

经典DATAGRID增加,删除,修改,分页全集合----面试必配

ASPX
<%@ Page language="c#" Codebehind="TradeClass_admin.aspx.cs" AutoEventWireup="false" Inherits="F_Admin.TradeClass_admin" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
    
<HEAD>
        
<title>WebForm5</title>
        
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
        
<meta content="C#" name="CODE_LANGUAGE">
        
<meta content="JavaScript" name="vs_defaultClientScript">
        
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
        
<LINK href="../Style/style_myoffer.css" type="text/css" rel="stylesheet">
    
</HEAD>
    
<body>
        
<form id="Form1" method="post" runat="server">
            
<table align="center" cellpadding="0" cellspacing="0" width="98%">
                
<tr>
                    
<td align="left" valign="top">
                        ID序号(注:请按顺序填写)
<asp:textbox id="ClassId" runat="server" Width="33px"></asp:textbox>
                        分类名称
<asp:textbox id="ClassName" runat="server" Width="88px"></asp:textbox><asp:button id="AddButton" runat="server" Text="添加"></asp:button>
                    
</td>
                
</tr>
                
<tr>
                    
<td align="center" valign="top" height="8">
                    
</td>
                
</tr>
                
<tr>
                    
<td align="center" valign="top" height="8">
                        
<asp:datagrid id="TradeClassList" runat="server" AutoGenerateColumns="False" DataKeyField="ClassID"
                            AllowPaging
="True" PageSize="5" Width="100%">
                            
<Columns>
                                
<asp:TemplateColumn HeaderText="ID序号">
                                    
<ItemTemplate>
                                        
<%# DataBinder.Eval(Container.DataItem,"ClassID") %>
                                    
</ItemTemplate>
                                    
<EditItemTemplate>
                                        
<asp:TextBox id="ClassID" Runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"ClassID") %>' Width="88px">
                                        
</asp:TextBox>
                                    
</EditItemTemplate>
                                
</asp:TemplateColumn>
                                
<asp:TemplateColumn HeaderText="分类名称">
                                    
<ItemTemplate>
                                        
<%# DataBinder.Eval(Container.DataItem,"ClassName") %>
                                    
</ItemTemplate>
                                    
<EditItemTemplate>
                                        
<asp:TextBox id="TradeClassName" Runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"ClassName") %>' Width="80px">
                                        
</asp:TextBox>
                                    
</EditItemTemplate>
                                
</asp:TemplateColumn>
                                
<asp:EditCommandColumn UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
                                
<asp:ButtonColumn Text="删除" CommandName="del"></asp:ButtonColumn>
                            
</Columns>
                            
<PagerStyle Mode="NumericPages"></PagerStyle>
                        
</asp:datagrid>
                    
</td>
                
</tr>
            
</table>
        
</form>
    
</body>
</HTML>
.cs
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Configuration;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace F_Admin
{
    
/// <summary>
    
/// TradeClass_admin 的摘要说明。
    
/// </summary>

    public class TradeClass_admin : System.Web.UI.Page
    
{
        
protected System.Web.UI.WebControls.TextBox ClassId;
        
protected System.Web.UI.WebControls.TextBox Textbox1;
        
protected System.Web.UI.WebControls.TextBox ClassName;
        
protected System.Web.UI.WebControls.Button AddButton;
        
protected System.Web.UI.WebControls.DataGrid TradeClassList;
    
        
private void Page_Load(object sender, System.EventArgs e)
        
{
            
// 在此处放置用户代码以初始化页面
            if(Session["UserName"]==null||Session["UserName"].ToString()==String.Empty)
            
{
                Response.Redirect(
"Admin_Login.aspx");
            }

            
if(!Page.IsPostBack)
            
{
                SetBind();
            }

        }

        
private void SetBind()
        
{
            SqlConnection conn
=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);
            SqlDataAdapter ad
=new SqlDataAdapter("select * from Fly_TradeClass",conn);
            DataSet ds
=new DataSet();
            conn.Open();
            ad.Fill(ds);
            conn.Close();
            TradeClassList.DataSource
=ds.Tables[0];
            TradeClassList.DataBind();
        }


        
Web 窗体设计器生成的代码

        
private void TradeClassList_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        
{
            
if(e.CommandName=="del")
            
{
                SqlConnection conn
=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]); 
                SqlCommand comm
=new SqlCommand("delete from Fly_TradeClass where ClassID=@ID",conn); 
                SqlParameter parm1
=new SqlParameter("@ID",SqlDbType.Int); 
                parm1.Value
=this.TradeClassList.DataKeys[e.Item.ItemIndex]; 
                comm.Parameters.Add(parm1); 
                conn.Open(); 
                comm.ExecuteNonQuery(); 
                conn.Close(); 
                SetBind(); 
            }

        }


        
private void TradeClassList_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        
{
            
this.TradeClassList.EditItemIndex=e.Item.ItemIndex; 
            SetBind(); 
        }


        
private void TradeClassList_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        
{
            SqlConnection conn
=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]); 
            SqlCommand comm
=new SqlCommand("update Fly_TradeClass set ClassId=@ClassId,ClassName=@ClassName where ClassID=@ID",conn); 
            SqlParameter parm1
=new SqlParameter("@ClassID",SqlDbType.Int); 
            parm1.Value
=((TextBox)e.Item.FindControl("ClassID")).Text; 
            SqlParameter parm2
=new SqlParameter("@ClassName",SqlDbType.VarChar,10); 
            parm2.Value
=((TextBox)e.Item.FindControl("TradeClassName")).Text; 
            SqlParameter parm3
=new SqlParameter("@ID",SqlDbType.Int); 
            parm3.Value
=this.TradeClassList.DataKeys[e.Item.ItemIndex]; 
            comm.Parameters.Add(parm1); 
            comm.Parameters.Add(parm2); 
            comm.Parameters.Add(parm3); 
            conn.Open(); 
            comm.ExecuteNonQuery(); 
            conn.Close(); 
            
this.TradeClassList.EditItemIndex=-1; 
            SetBind(); 
        }


        
private void TradeClassList_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        
{
            
this.TradeClassList.EditItemIndex=-1; 
            SetBind(); 
        }


        
private void TradeClassList_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
        
{
            
this.TradeClassList.CurrentPageIndex=e.NewPageIndex; 
            SetBind();
        }


        
private void TradeClassList_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
        
{
            
foreach(DataGridItem di in this.TradeClassList.Items) 
            
{ 
                
if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem) 
                
{ 
                    ((LinkButton)di.Cells[
3].Controls[0]).Attributes.Add("onclick","return confirm('你真的要删除吗?考虑清楚');"); 
                }
 
            }
 
        }


        
private void AddButton_Click(object sender, System.EventArgs e)
        
{
            SqlConnection conn
=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]); 
            SqlCommand comm
=new SqlCommand("insert into Fly_TradeClass (ClassID,ClassName) values (@ID,@ClassName)",conn); 
            SqlParameter parm1
=new SqlParameter("@ID",SqlDbType.Int); 
            parm1.Value
=this.ClassId.Text; 
            SqlParameter parm2
=new SqlParameter("@ClassName",SqlDbType.VarChar,10); 
            parm2.Value
=this.ClassName.Text; 
            comm.Parameters.Add(parm1); 
            comm.Parameters.Add(parm2); 
            conn.Open(); 
            comm.ExecuteNonQuery(); 
            conn.Close(); 
            SetBind();
            Response.Write(
"添加成功!");
        }

    }

}

posted on 2006-06-29 12:40  程序缘  阅读(303)  评论(0)    收藏  举报

导航