zoukankan
html css js c++ java
Asp.net 中的 DataGrid 和 GridView 批量更新
1.DataGrid 批量更新
在html的form中设置如下的DataGrid
<
asp:DataGrid
id
="DataGrid1"
style
="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 32px"
runat
="server"
Width
="912px"
Height
="136px"
AutoGenerateColumns
="False"
>
<
Columns
>
<
asp:TemplateColumn
HeaderText
="ID"
>
<
ItemTemplate
>
<
asp:Label
id
=Label1
runat
="server"
Text
='<%#
DataBinder.Eval(Container, "DataItem.id") %
>
'>
</
asp:Label
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="用户名"
>
<
ItemTemplate
>
<
asp:TextBox
id
=TextBox1
runat
="server"
Text
='<%#
DataBinder.Eval(Container, "DataItem.uname") %
>
'>
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="性别"
>
<
ItemTemplate
>
<
asp:TextBox
runat
="server"
Text
='<%#
DataBinder.Eval(Container, "DataItem.sex") %
>
' ID="Textbox2">
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="年龄"
>
<
ItemTemplate
>
<
asp:TextBox
runat
="server"
Text
='<%#
DataBinder.Eval(Container, "DataItem.age") %
>
' ID="Textbox3">
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="电话"
>
<
ItemTemplate
>
<
asp:TextBox
runat
="server"
Text
='<%#
DataBinder.Eval(Container, "DataItem.tel") %
>
' ID="Textbox4">
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="地址"
>
<
ItemTemplate
>
<
asp:TextBox
runat
="server"
Text
='<%#
DataBinder.Eval(Container, "DataItem.addr") %
>
' ID="Textbox5">
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
</
Columns
>
</
asp:DataGrid
>
<
asp:Button
id
="Button1"
style
="Z-INDEX: 102; LEFT: 80px; POSITION: absolute; TOP: 232px"
runat
="server"
Text
="批量更新"
></
asp:Button
>
在cs文件中写如下代码
private
void
Page_Load(
object
sender, System.EventArgs e)
{
//
在此处放置用户代码以初始化页面
if
(
!
this
.IsPostBack)
{
this
.Bind();
}
}
public
void
Bind()
{
try
{
SqlDataAdapter da
=
new
SqlDataAdapter(
"
select * from userinfo
"
,conn);
DataSet ds
=
new
DataSet();
da.Fill(ds,
"
gg
"
);
this
.DataGrid1.DataSource
=
ds;
this
.DataGrid1.DataBind();
}
catch
(Exception Err)
{
throw
Err;
}
finally
{
}
}
Web 窗体设计器生成的代码
#region
Web 窗体设计器生成的代码
override
protected
void
OnInit(EventArgs e)
{
//
//
CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base
.OnInit(e);
}
/**/
/**/
/**/
///
<summary>
///
设计器支持所需的方法 - 不要使用代码编辑器修改
///
此方法的内容。
///
</summary>
private
void
InitializeComponent()
{
this
.Button1.Click
+=
new
System.EventHandler(
this
.Button1_Click);
this
.Load
+=
new
System.EventHandler(
this
.Page_Load);
}
#endregion
private
void
Button1_Click(
object
sender, System.EventArgs e)
{
int
k
=
0
;
for
(
int
i
=
0
;i
<
this
.DataGrid1.Items.Count;i
++
)
{
int
id
=
int
.Parse(((Label)DataGrid1.Items[i].FindControl(
"
Label1
"
)).Text);
string
username
=
((TextBox)DataGrid1.Items[i].FindControl(
"
TextBox1
"
)).Text;
string
sex
=
((TextBox)DataGrid1.Items[i].FindControl(
"
TextBox2
"
)).Text;
int
age
=
int
.Parse(((TextBox)DataGrid1.Items[i].FindControl(
"
TextBox3
"
)).Text);
string
tel
=
((TextBox)DataGrid1.Items[i].FindControl(
"
TextBox4
"
)).Text;
string
addr
=
((TextBox)DataGrid1.Items[i].FindControl(
"
TextBox5
"
)).Text;
string
sql
=
"
update userinfo set uname='
"
+
username
+
"
',sex='
"
+
sex
+
"
',age=
"
+
age
+
"
,tel='
"
+
tel
+
"
',addr='
"
+
addr
+
"
' where id=
"
+
id
+
""
;
SqlCommand cmd
=
new
SqlCommand(sql,conn);
if
(conn.State
==
ConnectionState.Closed)
{
conn.Open();
}
k
=
cmd.ExecuteNonQuery();
}
if
(k
>
0
)
{
Page.RegisterStartupScript(
""
,
"
<script>alert('更新成功!');</script>
"
);
}
}
2.GridView 批量更新
在html的form中设置如下的GridView
<
asp:GridView
ID
="GridView1"
runat
="server"
AutoGenerateColumns
="False"
Width
="873px"
>
<
Columns
>
<
asp:TemplateField
HeaderText
="ID"
>
<
ItemTemplate
>
<
asp:Label
ID
="Label1"
runat
="server"
Text
='<%#
Bind("id") %
>
'>
</
asp:Label
>
</
ItemTemplate
>
</
asp:TemplateField
>
<
asp:TemplateField
HeaderText
="用户名"
>
<
ItemTemplate
>
<
asp:TextBox
ID
="TextBox2"
runat
="server"
Text
='<%#
Bind("uname") %
>
'>
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateField
>
<
asp:TemplateField
HeaderText
="性别"
>
<
ItemTemplate
>
<
asp:TextBox
ID
="TextBox3"
runat
="server"
Text
='<%#
Bind("sex") %
>
'>
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateField
>
<
asp:TemplateField
HeaderText
="年龄"
>
<
ItemTemplate
>
<
asp:TextBox
ID
="TextBox4"
runat
="server"
Text
='<%#
Bind("age") %
>
'>
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateField
>
<
asp:TemplateField
HeaderText
="电话"
>
<
ItemTemplate
>
<
asp:TextBox
ID
="TextBox5"
runat
="server"
Text
='<%#
Bind("tel") %
>
'>
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateField
>
<
asp:TemplateField
HeaderText
="地址"
>
<
ItemTemplate
>
<
asp:TextBox
ID
="TextBox6"
runat
="server"
Text
='<%#
Bind("addr") %
>
'>
</
asp:TextBox
>
</
ItemTemplate
>
</
asp:TemplateField
>
</
Columns
>
</
asp:GridView
>
</
div
>
<
asp:Button
ID
="Button1"
runat
="server"
Text
="批量更新"
OnClick
="Button1_Click"
/>
在cs文件中写如下代码
SqlConnection conn
=
new
SqlConnection(ConfigurationManager.AppSettings[
"
conn
"
]);
protected
void
Page_Load(
object
sender, EventArgs e)
{
if
(
!
this
.IsPostBack)
{
this
.Bind();
}
}
private
void
Bind()
{
try
{
SqlDataAdapter da
=
new
SqlDataAdapter(
"
select * from userinfo
"
,conn);
DataSet ds
=
new
DataSet();
da.Fill(ds,
"
ff
"
);
this
.GridView1.DataSource
=
ds;
this
.GridView1.DataBind();
}
catch
(Exception Err)
{
throw
Err;
}
finally
{
}
}
protected
void
Button1_Click(
object
sender, EventArgs e)
{
int
k
=
0
;
foreach
(GridViewRow gv
in
GridView1.Rows)
{
int
id
=
int
.Parse(((Label)gv.FindControl(
"
Label1
"
)).Text);
string
username
=
((TextBox)gv.FindControl(
"
TextBox2
"
)).Text;
string
sex
=
((TextBox)gv.FindControl(
"
TextBox3
"
)).Text;
int
age
=
int
.Parse(((TextBox)gv.FindControl(
"
TextBox4
"
)).Text);
string
tel
=
((TextBox)gv.FindControl(
"
TextBox5
"
)).Text;
string
addr
=
((TextBox)gv.FindControl(
"
TextBox6
"
)).Text;
string
sql
=
"
update userinfo set uname='
"
+
username
+
"
',sex='
"
+
sex
+
"
',age=
"
+
age
+
"
,tel='
"
+
tel
+
"
',addr='
"
+
addr
+
"
' where id=
"
+
id
+
""
;
SqlCommand cmd
=
new
SqlCommand(sql, conn);
if
(conn.State
==
ConnectionState.Closed)
{
conn.Open();
}
k
=
cmd.ExecuteNonQuery();
}
if
(k
>
0
)
{
Page.RegisterStartupScript(
""
,
"
<script>alert('更新成功!');</script>
"
);
}
}
查看全文
相关阅读:
Spring Boot 创建一个可以执行的 Jar
Spring Boot 第一个示例启动运行
Spring Boot 第一个示例 “main” 方法
Spring Boot 第一个示例 @EnableAutoConfiguration 注解
Spring Boot 第一个示例的 @RestController 和 @RequestMapping 注解
Spring Boot 2.4 第一个示例程序书写代码
Spring Boot 2.4 第一个示例程序添加 Classpath 依赖
Spring Boot 2.4 示例创建 POM 文件
Spring Boot 2.4 部署你的第一个 Spring Boot 应用需要的环境
Mysql 的concat、concat_ws()以及group_concat()的用法与区别
原文地址:https://www.cnblogs.com/zhukezhuke/p/1929752.html
最新文章
Thread
sublime markdown编辑配色
HashSet
BST,AVL,B,B+,B*,红黑树
LinkedList
ArrayList
JAVA传参
通过反编译深入理解Java String及intern(转)
Java8内存模型—永久代(PermGen)和元空间(Metaspace)(转)
.net中LAMBDA表达式常用写法
热门文章
C#链接数据库增删改查的例子
VS2015如何连接mySQL数据库图文
VS2015如何连接mySQL数据库
.NET读取Excel文件的三种方法的区别
cursor() — 数据库连接操作 python
创建并在项目中调用SQLSERVER存储过程的简单示例
一些英文词的标准缩写
在C#中??和?分别是什么意思?
linq中group by
Discourse 使用 API 进行数据恢复的时候提示行为 many times 错误
Copyright © 2011-2022 走看看