如何在GridView中后台添加“修改”列,并放到显示数据的最右边

如何在GridView中后台添加“修改”列,并放到显示数据的最右边,第1张

gridview的数据源是后台动态绑定的,其中有三列,如果启用GridView自己的”编辑“并改成模板的话“编辑”列会显示在GridView的最左侧,很难看。请问怎么后台动态添加一列“修改”,类型为LinkButton,然后添加代码提取一行数据中的ID以便后面取用?

public void gvBound(GridView gv)

{

DataTable dt = dal.gvBound()

dt.Columns[0].ColumnName = "单位编号"

dt.Columns[1].ColumnName = "单位名称"

dt.Columns[2].ColumnName = "所属考评组"

gv.DataSource = dt

1.App_CODE部分SqlHelper类添加一全局静态变量gdPageIndex.

//记录GridView分页信息,全局静态变量

public static string gdPageIndex = "0"

2.主页面CodeBehind代码,前台页面很简单,一个GridView控件而已,代码省略.

using System

using System.Data

using System.Configuration

using System.Collections

using System.Web

using System.Web.Security

using System.Web.UI

using System.Web.UI.WebControls

using System.Web.UI.WebControls.WebParts

using System.Web.UI.HtmlControls

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

{

//数据添加,编辑,删除页面简称维护页.

private string strSql = string.Empty

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

this.bind()//给GridView绑定数据.

}

}

protected void bind()

{

strSql = "SELECT ID,MNTH,STAT,L12,RPT,DRILL FROM dbo.STATINFO ORDER BY MNTH DESC"

DataSet ds = SqlHelper.GetDataSet(strSql)

this.grvMain.DataSource = ds

this.grvMain.DataKeyNames = new string[] { "ID" }

//Session["gvPageIndex"]的值在维护页设置.

if (Session["gvPageIndex"] == null)

{

//Session["gvPageIndex"]为null,即普通的第一次加载页面,不是从维护页返回的.

if (!Page.IsPostBack)

{

SqlHelper.gdPageIndex = "0"

this.grvMain.PageIndex = 0//普通加载,加载第一页数据.

}

}

else if (Session["gvPageIndex"] == "True")

{

//Session["gvPageIndex"]为True,即是从维护页返回的,True值在维护页设置.

if (!Page.IsPostBack)

this.grvMain.PageIndex = Convert.ToInt32(SqlHelper.gdPageIndex)//调用保存在全局变量里的PageIndex值.

Session.Clear()//此处Session值要清空,不然刷新页面就不会在第一页.

}

this.grvMain.DataBind()

}

protected void grvMain_PageIndexChanging(object sender, GridViewPageEventArgs e)

{

this.grvMain.PageIndex = e.NewPageIndex

SqlHelper.gdPageIndex = e.NewPageIndex.ToString()//将当前PageIndex的值保存进全局变量gdPageIndex.

this.bind()

}

}

3.数据维护页面.前台代码省略,一数据更新按钮btnUpdate.下面是CodeBehind代码

protected void btnUpdate_Click(object sender, EventArgs e)

{

Session["gvPageIndex"] = "True"//设置Session["gvPageIndex"]为True

Response.Redirect("Main.aspx")//转回主页面

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11176756.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存