這裡的文章是我個人的備份。
如果要閱讀原文,請到我的主網站:http://www.dotblogs.com.tw/mis2000lab/


本篇文章的原始出處(原文),位於:

[習題] FindControl 簡單練習--GridView + CheckBox,點選多列資料(刪除)

 

 

http://www.dotblogs.com.tw/mis2000lab/archive/2009/11/24/gridview_checkbox_delete.aspx

=====================================================

 

 

 

這個習題滿簡單的,但我一直都沒有加到書本裡,實在很對不起。

今天在別的論壇看到相關的發問,我想就補充一下。

 

先來看看執行結果:

Q:  在 GridView裡面,每一列資料都加上 CheckBox,

     被勾選的那一列,就要刪除之。 

 

 ======================================================================

首先,我們先把 GridView的某一欄位,修改成「樣版」。

就可以在裡面,手動加入一個 CheckBox控制項。  

這種作法在任何一本 ASP.NET入門書都會講到。

 

接下來,就是寫程式了。

01     Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
02         Dim myMessage As String = Nothing
03
04         For i As Integer = 0 To (GridView1.Rows.Count - 1)
05             Dim myCheckbox As CheckBox = GridView1.Rows(i).FindControl("CheckBox1")
06             Dim myID As Label = GridView1.Rows(i).FindControl("Label1")
07
08             If myCheckbox.Checked = True Then
09                 myMessage = myMessage & myID.Text & ","
10             End If
11         Next
12
13         Label2.Text = myMessage
14     End Sub

 

當我們可以順利地取得「被勾選」的那幾列資料,所對應資料表的「主索引鍵」。

我們就可以執行SQL指令,去刪除他們囉!

很簡單吧!

 

 

 

 

 關於 .FindControl()方法,其實是很多初學者都不熟悉的一塊

可以看看這幾篇文章,好好練習一下。

http://www.dotblogs.com.tw/mis2000lab/Tags/FindControl/default.aspx

 

 


 

 

......  寄信給我    mis2000lab (at) 雅虎.com.台灣 ................................................................................................................
ASP.NET專題實務  (文魁出版,VB版 P8187 / C#版P09027

.............................................................................................................. 寄信給我    mis2000lab (at) 雅虎.com.台灣 ........

創作者介紹

MIS2000 Lab -- ASP.NET專題實務 / 線上教學文件

MIS2000 Lab 發表在 痞客邦 PIXNET 留言(0) 人氣()