ASP.NET一次性對(duì)GridView批量更新多行數(shù)據(jù)
假定有一個(gè)Product表,字段有(Id,Name,Quantity,...)我們要一次批量更新Quantity的值
首先在Gridview中,Quantity列以TemplateField顯示,其他的列屬性設(shè)為只讀,把顯示格式設(shè)為TextBox。
<asp:TemplateField HeaderText="Quantity">
<itemtemplate>
<asp:TextBox ID="editQuantity" runat="server" CssClass="GridEditingRow" Width="24px" MaxLength="2" Text='<%#Eval("Quantity")%>' />
</itemtemplate>
</asp:TemplateField>在GridView下面添加一個(gè)Button控件,定義onclick方法為updateButton_Click
最后updateButton_Click代碼為:
protected void updateButton_Click(object sender, EventArgs e)
{
int rowsCount = grid.Rows.Count;
GridViewRow gridRow;
TextBox quantityTextBox;
string productId;
int quantity;
bool success = true;
// 遍歷GridView中的每一行
for (int i = 0; i < rowsCount; i++)
{
// 獲行當(dāng)前行
gridRow = grid.Rows[i];
// 通過DATAKEYS來取行沒顯示出來的ID號(hào)
Id = grid.DataKeys[i].Value.ToString();
//
quantityTextBox = (TextBox)gridRow.FindControl("editQuantity");
// 轉(zhuǎn)換為整形,如果輸入的是非法字符Int32.TryParse返回FALSE
if (Int32.TryParse(quantityTextBox.Text, out quantity))
{
// 調(diào)用業(yè)務(wù)層的方法更新數(shù)據(jù)
success = success && BLL.UpdateItem(Id, quantity);
}
else
{
// 更新失敗
success = false;
}
// 顯示信息
statusLabel.Text = success ?
"<br />更新成功!<br />" :
"<br />更新失?。?lt;br />";
}
// 重新綁定GridVIEW
PopulateGridView();
}到此這篇關(guān)于ASP.NET對(duì)GridView批量更新數(shù)據(jù)的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET內(nèi)置對(duì)象之Application對(duì)象
Application對(duì)象是HttpApplicationState類的一個(gè)實(shí)例,它可以產(chǎn)生一個(gè)所有Web應(yīng)用程序都可以存取的變量,這個(gè)變量的可以存取范圍涵蓋全部使用者,也就是說只要正在使用這個(gè)網(wǎng)頁的程序都可以存取這個(gè)變量。2008-09-09
asp.net 使用Response.Filter 過濾非法詞匯
一般信息發(fā)布網(wǎng)站,論壇等均具有實(shí)現(xiàn)非法詞匯過濾功能,即當(dāng)用戶錄入非法詞匯時(shí),進(jìn)行替換,使其無法顯示到頁面上,針對(duì)此種功能,通常采用的時(shí),在讀取時(shí),在讀到非法詞匯后,進(jìn)行替換。2010-03-03
WPF開發(fā)之利用DrawingVisual繪制高性能曲線圖
通過WPF實(shí)現(xiàn)大數(shù)據(jù)曲線圖時(shí),如果用最基礎(chǔ)的Canvas來實(shí)現(xiàn),性能堪憂。所以本文將利用DrawingVisual繪制高性能曲線圖,感興趣的可以了解一下2022-02-02
Chrome內(nèi)核下由ashx輸出的js代碼不起作用的解決方法
Chrome內(nèi)核下由ashx輸出的js代碼不起作用的解決方法,需要的朋友可以參考一下2013-03-03
.NET使用System.Timers.Timer類實(shí)現(xiàn)程序定時(shí)執(zhí)行
這篇文章介紹了.NET使用System.Timers.Timer類實(shí)現(xiàn)程序定時(shí)執(zhí)行的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
asp.net實(shí)現(xiàn)中英文多域名檢測的方法
這篇文章主要介紹了asp.net實(shí)現(xiàn)中英文多域名檢測的方法,涉及asp.net針對(duì)URL中域名的解析及字符串操作相關(guān)技巧,需要的朋友可以參考下2016-08-08
.net生成縮略圖及水印圖片時(shí)出現(xiàn)GDI+中發(fā)生一般性錯(cuò)誤解決方法
這篇文章主要介紹了.net生成縮略圖及水印圖片時(shí)出現(xiàn)GDI+中發(fā)生一般性錯(cuò)誤解決方法 ,需要的朋友可以參考下2014-11-11
asp.net coolite 刪除時(shí)彈出確定按鈕
如果用coolite的 Confirm() 是不知道你選擇了什么的 如上代碼才可以的2009-09-09

