您的位置:首页 > 其它

GridView 基本操作 编辑,删除学习

2011-06-21 00:04 309 查看
一,拖拉一个GridView 设置绑定字段,添加编辑,更新,取消,删除按钮 主要HTML源码如下 :

<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False"
onpageindexchanging="GridView1_PageIndexChanging"
onrowcancelingedit="GridView1_RowCancelingEdit"
onrowdatabound="GridView1_RowDataBound" onrowdeleting="GridView1_RowDeleting"
onrowediting="GridView1_RowEditing" onrowupdating="GridView1_RowUpdating"
Width="527px">
<Columns>
<asp:BoundField DataField="title" HeaderText="标题" />
<asp:CommandField ShowSelectButton="True" />
<asp:CommandField ShowEditButton="True" />
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False"
CommandName="Delete" Text="删除" OnClientClick="return confirm('确认要删除吗?');"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>

</Columns>

</asp:GridView>

//说明一下,给删除按钮加上确认提示,在设计界面,点击编辑列,把默认的删除转换为TemplateField 即可加上OnClientClick="return confirm('确认要删除吗?');"

二、CS后台主要代码如下:

OleDbConnection conn;
OleDbCommand comd;
string connstr = System.Configuration.ConfigurationSettings.AppSettings["ConnStr"] + System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationSettings.AppSettings["dbPath"]);

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) {
bind();
}
}

//绑定数据

public void bind()
{
string sql = "select * from erji ";
conn = new OleDbConnection(connstr);
OleDbDataAdapter myda = new OleDbDataAdapter(sql,conn);
DataSet myds = new DataSet();
conn.Open();
myda.Fill(myds,"表一");
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] {"id"};
GridView1.DataBind();
conn.Close();

}

//删除数据

protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{

string sql = "delete from erji where id=" + GridView1.DataKeys[e.RowIndex].Value.ToString() + " ";
conn = new OleDbConnection(connstr);
comd = new OleDbCommand(sql,conn);
conn.Open();
comd.ExecuteNonQuery();
conn.Close();
bind();
}

//分页用到的

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
bind();

}

//编辑更新要做如下处理

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
bind();

}

//取消操作要做如下处理

protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
bind();
}

//更新操作要做如下处理

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string sql = " update erji set title='" + ((TextBox)( GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim() + "' where id=" + GridView1.DataKeys[e.RowIndex].Value + " ";
conn = new OleDbConnection(connstr);
comd = new OleDbCommand(sql,conn);
conn.Open();
comd.ExecuteNonQuery();
conn.Close();
GridView1.EditIndex = -1;
bind();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: