gridview 添加行数据

gridview 添加行数据,第1张

请问,这样做的目的是什么,有什么意义?

就算一行一行的添加数据,那也是需要绑定数据源的,要实现逐行添加数据不是不可以实现,只是真的没明白为啥要这样做。。。

比如下面代码:

//定义数据源 table

public static DataTable Cpdt

//页面加载

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

Cpdt = new DataTable()

Createbt()

GridView1.DataSource = Cpdt

GridView1.DataBind()

}

}

//根据自己需求创建表

void Createbt()

{

DataColumn mycol = new DataColumn()

Cpdt.Columns.Add(new DataColumn("CPID", typeof(Int32)))

Cpdt.Columns.Add(new DataColumn("CPNAME", typeof(String)))

Cpdt.Columns.Add(new DataColumn("CPDJ", typeof(Single)))

Cpdt.Columns.Add(new DataColumn("SL", typeof(Int32)))

Cpdt.Columns.Add(new DataColumn("CPSUM", typeof(Double)))

Cpdt.AcceptChanges()

Cpdt.PrimaryKey = new DataColumn[] { Cpdt.Columns[0] }

Cpdt.AcceptChanges()

}

//比如点击button的时候添加一条数据

protected void Button1_Click(object sender, EventArgs e)

{

DataRow myrow = Cpdt.NewRow()

if (Cpdt.Rows.Count==0)

{

myrow[0] = 1

}

else

{

myrow[0] = int.Parse(Cpdt.Rows[Cpdt.Rows.Count-1][0].ToString()) + 1

}

myrow[1] = 2

myrow[2] = 3

myrow[3] = 4

Cpdt.Rows.Add(myrow)

var mm = Cpdt.AsEnumerable().Sum(p =>Convert.ToDouble(p["SL"]))

//Label3.Text = mm.ToString()

Cpdt.AcceptChanges()

GridView1.DataSource = Cpdt

GridView1.DataBind()

}

1 、gridview的datasource可能是一个DataTable,可以点击“新增行”按钮的时候,先把DataTable在多加一行DataRow,绑定好,这样gridview的datasource就是多出一行空数据的DataTable。

2 、绑定后,调用RowEditing事件,设置gridview的EditIndex,这样就可以在新增的那行中显示文本框了,以供用户编辑数据。

在可用字段里选择HyperLinkField,单击添加按钮。然后选择在【选定的字段】中,选择刚添加的这个HyperLinkField。在右边按照图示进行设置:

1、外观-Text:设置链接的文字。

2、外观-HeaderText:设置链接列的标题。

3、数据-DataNavigateUrlFields:设置超链接要传递的参数,这里写的“id,name”表示要传递id和name这两个字段的值,注意用逗号分隔,可以设置多个字段。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存