C# .net中gridview的批量修改怎么实现
作者&投稿:彩艺 (若有异议请与网页底部的电邮联系)
在GridView里面的更新事件里面做操作,方法同更新数据库的普通方法一样,可更具提供给你的e取得当前的行号所对应的ID,必须先设置DataMember
如果 有动态的就如下:在属性栏中有一个事件,加上 RowUpdating 事件就可以 了,再在事件设置编辑索引为当前索引然后 重新绑定GridView
如果 是想所有列都可编辑就,就把列转换成模板,把ItemTemplete中的Label换成你要的控件就可以了
{
string orderid_all = "";
//int count = 0;
for (int i = 0; i < gdv_Order.Rows.Count; i++)
{
GridViewRow row = gdv_Order.Rows[i];
Label ln = (Label)row.Cells[0].FindControl("LabVisible");
Label orderid = (Label)row.Cells[0].FindControl("LblOrderId");
CheckBox box = (CheckBox)row.Cells[0].FindControl("CheckSelect");
if (box.Checked == true)
{
orderid_all += orderid.Text + ",";
//count++;
}
}
orderid_all = orderid_all.Substring(0, orderid_all.Length - 1);
Response.Redirect("OrderDistriButeInfo.aspx?oid_all=" + orderid_all + "&department=" + Server.UrlEncode(Session["Unit"].ToString()) + "&pl=pl");
}
if (Request.QueryString["pl"] =="pl")
{
//把传过来的orderid 分割循环保存
string orderid_all = Request.QueryString["oid_all"].ToString();
char[] sp = (",").ToCharArray();
string[] all_orderid = orderid_all.Split(sp);
for (int j = 0; j < all_orderid.Length; j++)
{
string sql_add = "insert into tsmorderdepartmentperson(orderid,name,orderstate,department,setdatetime,setdatehour,setdateminutes) values('" + all_orderid[j] + "','" + Name.Text + "','" + "操作中" + "','" + "渠道部" + "','" + tbDate.Text + "','" + tbHours.Text + "','" + tbMinutes.Text + "')"; ;
list.ExeSql(sql_add);
}
}
else
{
string sql_add = "insert into tsmorderdepartmentperson(orderid,name,orderstate,department,setdatetime,setdatehour,setdateminutes) values('" + Request.QueryString["OrderId"] + "','" + Name.Text + "','" + "操作中" + "','" + "渠道部" + "','" + tbDate.Text + "','" + tbHours.Text + "','" + tbMinutes.Text + "')"; ;
list.ExeSql(sql_add);
}
你自己改改吧,功能类似,思路就是把id合起来传值。接收值,拆分了,再。。。。
在注销Button的Click事件中,循环遍历GridView的每个行。
对于每次遍历。
取得CheckBox实例,查看是否选中。
下面是基本代码框架
for(int i = 0 ; i < GridView1.Rows.Count - 1 ; i++)
{
CheckBox cb = GridView1.Rows[i].FindControl("CheckBox1");
if(cb.Checked)
{
//do something......
}
}
foreach(datagirdrow dr in grid.rows)
{
if(dr["选择"].value == true)
{
//弹出一个框,再框里面输入注销原因
string sTemp =string.empty;//临时存放输入的注销原因的
//让你弹出的框中,返回数值到sTemp
from弹出窗口 fm注销原因 = new from弹出窗口(ref sTemp);//自己建立一个窗体吧
//到这步sTemp就变了值了
if(sTemp !=string.empty)
{
dr["注销原因"].value=sTemp;//更改当前行的注销原因
}
}
}
PS:自己改改,我这个是winform的做法。form么,你可以用另外一个新建一个页面。
在注销Button的Click事件中,循环遍历GridView的每个行。
对于每次遍历。
取得CheckBox实例,查看是否选中。
下面是基本代码框架
for(int i = 0 ; i < GridView1.Rows.Count - 1 ; i++)
{
CheckBox cb = GridView1.Rows[i].FindControl("CheckBox1");
if(cb.Checked)
{
//do something......
}
}
你可以动态生成复选框的ID或者name,然后再获取到你选中的复选框,有了复选框,不就等于有了主键吗。。 有了主键。。怎么操作不行。。
巩缪利鲁: private DataTable getDataSource(string BookType){string sql="select * from Book where BookType="+BookType;SqlConnection con=new SqlConnection(ConnectionString);SqldataA...
怀柔区18283829691: c#.net设置GridView的数据源,并绑定数据 - ?
巩缪利鲁: string sql="select.....";//写入要选择的数据条件之类的语句 gv.DataSource = dataOperate.getDataset(sql); //连接数据源 gv.DataBind();//绑定控件//其中gv表示前台gridview控件的ID
怀柔区18283829691: C#.Net中gridview的简单问题,求解答,谢谢! - ?
巩缪利鲁: <asp:Button ID="Button1" runat="server...
怀柔区18283829691: GridView 显示查询结果 c#.net - ?
巩缪利鲁: 添加一个GridView控件,对其进行编辑列代码如下 SQL语句:string sql="select * from b where class='"+session["Class"].ToString()+"'"; 数据库连接就省略了,直接写帮定方法 SqlDataAdapter myadpt = new SqlDataAdapter(sql, ...
怀柔区18283829691: C#.net gridview 在字段列中如何加链接??
巩缪利鲁: 编辑这个gridview模板,里面加上一个HyperLink,将HyperLink值绑定读取到的值就行
怀柔区18283829691: C#.net中,利用gridview做一个查询,通过在textbox输入查询条件,然后点击button指向一个新的页面该怎么做 - ?
巩缪利鲁: 比如你想指向新的页面AAA 你就在Button的单机事件中这样写 response.redirect("AAA.aspx?id="+textbox的值) 就可以了.
怀柔区18283829691: C#.Net中gridview的简单问题,求解答,谢谢!?
巩缪利鲁: 用dataview的条件过滤 将满足条件的过滤出来,然后给gridview
怀柔区18283829691: C#.NET GridView的问题. - ?
巩缪利鲁: string SQLString = "select * from fy";DataSet ds = new DataSet();SqlDataAdapter command = new SqlDataAdapter(SQLString, sqlConnx);command.Fill(ds, tableName);GridView1.
怀柔区18283829691: c#中如何使用gridview - ?
巩缪利鲁: 如何利用GridView与UpdatePanel组合实现无刷新:新增、编辑、删除、分页效果 http://blog.csdn.net/webjie/article/details/3988499
怀柔区18283829691: c# .net 如何修改gridview自动生成列的列名? 就像你在知道里提问的那样?
巩缪利鲁: <p>把鼠标放到gv上面点右上角那个黑色三角,会出现如下图样子:</p> <p></p> <p>然后点击编辑列,如图:</p> <p></p> <p>然后你修改HeaderText即可</p>