Gridview 动态添加行
/// <summary>
/// 首次加载绑定
/// </summary>
private void DataLoad() {
list.Add(new Product());
this.GVProduct.DataSource = list;
this.GVProduct.DataBind();
ViewState["list"] = list;
}
/// <summary>
/// 添加行
/// </summary>
private void AddRow() {
list = (List<Product>)ViewState["list"];
for (int i = 0; i < this.GVProduct.Rows.Count; i++) {
Product mod = new Product();
mod.People = int.Parse((GVProduct.Rows[i].Cells[3].FindControl("txtPeople") as TextBox).Text.ToString());
mod.Price = int.Parse((GVProduct.Rows[i].Cells[1].FindControl("txtPrice") as TextBox).Text.ToString());
mod.Size = int.Parse((GVProduct.Rows[i].Cells[3].FindControl("txtSize") as TextBox).Text.ToString());
list.Add(mod);
}
list.Add(new Product());
ViewState["list"] = list;
this.GVProduct.DataSource = list;
this.GVProduct.DataBind(); }
/// <summary>
/// 删除行
/// </summary>
private void DeleteRow() {
list = (List<Product>)ViewState["list"];
for (int i = this.GVProduct.Rows.Count - 1; i >= 0; i--) {
list[i].People = int.Parse((GVProduct.Rows[i].Cells[3].FindControl("txtPeople") as TextBox).Text.ToString());
list[i].Price = int.Parse((GVProduct.Rows[i].Cells[1].FindControl("txtPrice") as TextBox).Text.ToString());
list[i].Size = int.Parse((GVProduct.Rows[i].Cells[3].FindControl("txtSize") as TextBox).Text.ToString());
CheckBox ck = GVProduct.Rows[i].FindControl("ckitem") as CheckBox;
if (ck.Checked) {
list.RemoveAt(i);
}
ViewState["list"] = list;
GVProduct.DataSource = list;
GVProduct.DataBind();
}
}
Gridview 动态添加行的更多相关文章
- gridview动态添加行(不用datatable实现)
GridViewRow newrow = , , DataControlRowType.Separator, DataControlRowState.Normal); TableCell[] tc=] ...
- GridView动态增加行
GridView动态增加行GridView动态增加行 很多时候,我们需要可编辑的表格,来比较方便的进行数据的录入,比如学习成绩的录入.当然这就要求能够动态的增加行,来一次性录入多个学生的信息.现在用A ...
- asp.net gridview动态添加列,并获取其数据;
1,绑定数据前先动态添加列,见方法CreateGridColumn(只在第一次加载动态添加): 2,gvlist_RowDataBound为对应列添加控件: 前台代码: <%@ Page Lan ...
- 【Android疑难杂症】GridView动态设置Item的宽高导致第一个Item不响应或显示不正常的问题
前言 这个问题在之前做一个盒子项目时遇到过,最近又遇到了,使用GridView遇到的非常奇葩的问题,这里记录分享一下. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnb ...
- GridView动态添加列之后,导致PostBack(回发)页面数据丢失问题解决
直入主题,首先声明,这个问题是无法解决的,特此在这说明 一.如何动态添加列,如下: 在页面重写OnInit事件,至于为什么要在这个事件写,根据页面的声明周期和经验可知(不用去别的地方找了,这个我找了之 ...
- android实现界面左右滑动(GridView动态设置item,支持每个item按某个属性排序来显示在不同的界面)
效果图 : 分别是第一页.第二页.第三页,随手截的图,不整齐,勿见怪.开始走了弯路,废了不少时间. 思路如下: 1.用ViewPager实现左右分页滑动 ...
- GridView动态构建OrderBy进行排序
废话不说,直接上例子: 前台代码: <asp:GridView ID="GridView1" runat="server" AllowSorting=&q ...
- GridView动态添加列并判断绑定数据DataTable的列类型控制展示内容
此篇随笔是2013年根据项目需求开发记录的,不一定符合大众口味,只需了解开发思路,毕竟解决方案多种多样. 下面简单说说需求点吧: (1)通过下拉列表可以选择一个DataSet(数据集),一个DataS ...
- GridView动态计算高度
// 动态加载GridView 高度 public static void setListViewHeightBasedOnChildren(MyGridView myGridView) { List ...
随机推荐
- python装饰器练习题
练习题1. 请使用python, 对下面的函数进行处理, def hello(name): print "hello, %s" % name 在函数被调用时打印耗时详情 <f ...
- 《Java从入门到放弃》JavaSE入门篇:网络编程(入门版)
要进行网络编程,首先要搞清楚目的是什么. 网络编程说简单点就是在网络上的计算机进行数据的交互. 既然要进行数据交互,那就需要有一个发送方和一个接受方. 按网络上的说法,就是一个攻一个受· 当然,现阶段 ...
- ubuntu中设置php7.0-fpm开机自启动
1.编写/etc/init/php7.0-fpm脚本如下 sudo vim /etc/init/php7.0-fpm #!/bin/sh### BEGIN INIT INFO# Provides: p ...
- c# 第一节课 一些简单的应用
注册要钱 我没钱
- oracle pl/sql 包
包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成.1).我们可以使用create package命令来创建包,如:i.创建一个包sp_packageii.声明该包有一个过程update_sal ...
- .NET Excel导出方法及其常见问题详解
摘要:.NET Excel导出方法及其常见问题详解. 一.Excel导出的实现方法 在.net 程序开发中,对于Excel文件的导出我们一共有三种导出方式: 利用文件输出流进行读写操作 这种方式的导出 ...
- 第1回-使用ThinkPHP的3.1.3版本轻松建网站
使用ThinkPHP的3.1.3版本轻松建网站 首先,从ThinkPHP官网下载一个ThinkPHP3.1.3版本框架包. 其次,取出ThinkPHP3.1.3包中的核心部分,部署你的服务器项目下. ...
- TETeLasr Cutting System 开机回零问题
TETeLasr Cutting System 开机回零问题 :打开 "轴信息" :打开 加工参数-->机器参数-->脉冲当量: X轴==4000 Y轴== ...
- Finding LCM (最小公倍数)
Finding LCM Time Limit: 2000MS Memory Limit: 32768KB 64bit IO Format: %lld & %llu [Submit] ...
- 宝藏(树形DP)
这道题目是十分考验思维的,n^2应该还是比较好想的,主要是如何转移根的问题.转移根,在我看来应该是树形dp最难的一部分了, 一般学会如何转移根,也就差不多考验通吃树形dp了. 下面转一转大佬链接: ...