Misalkan ada tabel Produk dengan bidang (Id, Nama, Kuantitas,...) dan kita ingin memperbarui nilai Kuantitas dalam batch sekaligus
Pertama, di Gridview, kolom Quantity ditampilkan sebagai TemplateField, properti kolom lainnya diatur ke read-only, dan format tampilan diatur ke TextBox
<asp:TemplateField HeaderText="Jumlah">
<Templat Barang>
<asp:TextBox ID="editQuantity" runat="server" CssClass="GridEditingRow"
Lebar="24px" MaxLength="2" Teks='<%#Eval("Kuantitas")%>' />
</Templat Barang>
</asp:TemplateField>
Tambahkan kontrol Tombol di bawah GridView dan tentukan metode onclick sebagai updateButton_Click
Kode updateButton_Click terakhir adalah:
protected void updateButton_Click(pengirim objek, EventArgs e)
{
int rowCount =
grid.Rows.Count
;
GridViewRow
gridRow
;
// Lintasi setiap baris di GridView
untuk (int i = 0; i < jumlah baris; i++)
{
// Dapatkan baris saat ini
gridRow = grid.Rows[i];
// Gunakan DATAKEYS untuk mendapatkan nomor ID yang tidak ditampilkan
Id = grid.DataKeys[i].Value.ToString();
//
quantityTextBox = (TextBox)gridRow.FindControl("editQuantity");
// Konversikan ke integer, jika inputnya adalah karakter ilegal Int32.TryParse mengembalikan FALSE
if (Int32.TryParse(quantityTextBox.Text, kuantitas keluar))
{
// Panggil metode lapisan bisnis untuk memperbarui data
sukses = sukses && BLL.UpdateItem(Id, kuantitas);
}
kalau tidak
{
//Pembaruan gagal
sukses = salah;
}
// menampilkan informasi
statusLabel.Teks = sukses?
"<br />Pembaruan berhasil!<br />" :
"<br />Pembaruan gagal!<br />";
}
//Mengikat kembali GridVIEW
PopulateGridView();
}
http://www.cnblogs.com/timone/archive/2006/11/17/564171.html