当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net中一次更新DATAGRID中所有记录

ASP.NET
用ASP/ASP.NET实现网络空间管理
ASP.NET程序中用Repeater实现分页
在ASP.NET中上传图片并生成缩略图的C#源码
Asp.net动态生成html页面
DataGrid同时具有分页和排序功能及注意点
建立自己的RSS
Asp.net中处理一个站点不同Web应用共享Session的问题
创建完全可编辑的 DataGrid
调试ASP.NET应用程序的方法和技巧
让你的.NET程序兼容不同版本的Dll文件
用ASP.NET实现简单的文字水印
ASP.NET中实现中文简/繁体自动转换的类
ASP.NET技巧:为Blog打造个性日历
ASP.NET中使用IFRAME建立类Modal窗口
WEB页面多语言支持解决方案
涉及网络编程时,需要用到的几个常用方法
2个页面间不通过Session与url的传值方式
ASPX中的用户控件与ASP中的INCLUDE方法对比
使用HttpWebRequest向网站模拟上传数据
在asp.net中操作sql server数据库的一些小技巧

ASP.NET 中的 asp.net中一次更新DATAGRID中所有记录


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 52 ::
收藏到网摘: n/a

在asp.net中,如何一次性更新datagrid中的所有记录呢?可以用如下的方法,首先,
要对DATAGRID中要更新的列建立模版列,比如:


asp:datagridid="dgPopularFAQs"runat="server"
AutoGenerateColumns="False"
...>
<Columns>
<asp:BoundColumnDataField="FAQID"ItemStyle-Width="10%"
ItemStyle-HorizontalAlign="Center"HeaderText="FAQID"/>

<asp:BoundColumnDataField="CategoryName"HeaderText="Category"/>

<asp:TemplateColumnHeaderText="Question">
<ItemTemplate>
<asp:TextBoxrunat="server"id="txtDescription"Columns="75"
Text='<%#Container.DataItem("Description")%>'/>
</ItemTemplate>
</asp:TemplateColumn>

<asp:TemplateColumnHeaderText="SubmittedBy">
<ItemTemplate>
<asp:TextBoxrunat="server"id="txtSubmittedBy"
Text='<%#Container.DataItem("SubmittedByName")%>'/>
</ItemTemplate>
</asp:TemplateColumn>

</Columns>
</asp:datagrid>
之后,对DATAGRID进行一次遍历,
DimmyConnectionasNewSqlConnection(connectionstring)
DimmyCommandasNewSqlCommand(strSQL,myConnection)

DimdgiasDataGridItem
ForEachdgiindgPopularFAQs.Items
'ReadinthePrimaryKeyField
DimidasInteger=Convert.ToInt32(dgPopularFAQs.DataKeys(dgi.ItemIndex))
DimquestionasString=CType(dgi.FindControl("txtDescription"),TextBox).Text
DimsubmittedByasString=CType(dgi.FindControl("txtSubmittedBy"),TextBox).Text

'IssueanUPDATEstatement...
DimupdateSQLasString="UPDATETableNameSETQuestion=@Question,"&_
"SubmittedByName=@SubmittedByNameWHEREFAQID=@ID"
myCommand.Parameters.Clear()
myCommand.Parameters.Add("@Question",question)
myCommand.Parameters.Add("@SubmittedByName",submittedBy)

myCommand.ExecuteNonQuery()
Next