当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 在asp.net中实现datagrid checkbox 全选的方法

ASP.NET
Check if a File is in Internet Explorers Cache
如何检测电脑是否安装了.net framework
[Regex]Greta不支持“Named Groups”特性
使用子類化的方法來實現VB對特殊消息的響應
C#软件启动设计
C#中虛函數,抽象,接口的簡單説明
TreeView的操作
InteliIM 3.0 will be released soon!
如何將 Visual Basic 與 ADO 搭配使用
建立永遠停留在最上層的窗口(VB)
C#中比较两个值型一维数组变量是否值相等
谈谈软件工程设计的艺术
批量添加Active Directory帐号
文件搜索的实现(深度搜索)
一个图形分割问题[答网友]
XML反串行化Namespace不统一而引起的错误
使用Javascript创建XML文件
突破MsComm控件RThreshold限制,全部数据统统收!
如何制作一个带启动屏幕的窗体
【翻译】Managed DirectX(第五章)

ASP.NET 中的 在asp.net中实现datagrid checkbox 全选的方法


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

复制代码 代码如下:
<form runat="server">
<asp:DataGrid AutoGenerateColumns="false" OnItemCreated="itemcreate" DataKeyField="link_id" ID="mydg" runat="server" >
<columns>
<asp:TemplateColumn>
<headertemplate>
<asp:CheckBox ID="checkall" OnCheckedChanged="chkall_onchanged" AutoPostBack="true" runat="server"></asp:CheckBox>
</headertemplate>
<itemtemplate>
<asp:CheckBox ID="checkdel" runat="server"></asp:CheckBox>
</itemtemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="link_id" HeaderText="Link_Id" ></asp:BoundColumn>
<asp:BoundColumn HeaderText="网站名称" DataField="sitename" />
<asp:BoundColumn HeaderText="网站地址" DataField="url" />
<asp:BoundColumn HeaderText="网站介绍" DataField="intro" />
<asp:BoundColumn HeaderText="网站评分" DataField="grade" />
<asp:BoundColumn HeaderText="提交时间" DataField="submit_date"></asp:BoundColumn>
</columns>
</asp:DataGrid>
<asp:Label ID="lb1" runat="server"></asp:Label>
<asp:Button ID="btn1" Text="删 除" runat="server" OnClick="btn1_onclick"></asp:Button>
<asp:Button ID="ok" OnClick="ok_click" Text="保存修改" runat="server"></asp:Button>
<asp:Button ID="cancel" OnClick="cancel_click" Text="取消修改" runat="server"></asp:Button>
</form>

<%@ import namespace="system.data"%>
<%@ import namespace="system.data.oledb"%>
<script language="vb" runat="server">
dim conn as oledbconnection
dim ds as dataset
sub Page_load(sender as object,e as eventargs)
if not ispostback then
calldb()
else
ds=session("ds")
end if
end sub
sub calldb()
conn = new oledbconnection("provider=Microsoft.jet.oledb.4.0;data source="& server.MapPath("wwwlink.mdb"))
dim sqlstr="select * from link"
conn.open()
dim adp as new oledbdataAdapter(sqlstr,conn)
ds =new dataset()
adp.fill(ds,"link")
mydg.DataSource=ds.tables("link").defaultview
mydg.databind()
conn.close()
session("ds")=ds
end sub
sub btn1_onclick(sender as object, e as eventargs)
dim chk as checkbox
dim id as string
dim datag as datagriditem
conn = new oledbconnection("provider=Microsoft.jet.oledb.4.0;data source="& server.MapPath("wwwlink.mdb"))
dim sqlstr as string
dim cmd as oledbcommand
dim i as integer
'for each datag in mydg.items
for i=0 to mydg.items.count-1
'chk=ctype(datag.findcontrol("checkdel"),checkbox)
'chk=datag.findcontrol("checkdel")
chk=mydg.items(i).cells(0).findcontrol("checkdel")
if chk.checked then
id=cstr(mydg.items(i).cells(1).text)
'id=cstr(mydg.datakeys(datag.itemindex))
conn.open()
sqlstr="delete from link where link_id=" & id
cmd=new oledbcommand(sqlstr,conn)
cmd.executenonquery
'ds.tables("link").rows(i).delete()
conn.close()
end if
next
'session("ds")=ds
'mydg.edititemindex=-1
'mydg.datasource=ds.tables("link").defaultview
'mydg.databind()
calldb()
end sub
sub cancel_click(sender as object, e as eventargs)
calldb()
end sub
sub ok_click(sender as object, e as eventargs)
conn=new oledbconnection("provider=Microsoft.jet.oledb.4.0;data source="&server.MapPath("wwwlink.mdb"))
dim adp as new oledbdataadapter("select * from link",conn)
dim ocb as new oledbcommandbuilder(adp)
adp.updatecommand=ocb.getupdatecommand()
adp.deletecommand=ocb.getdeletecommand()
adp.update(ds,"link")
calldb()
end sub
dim checka as checkbox
sub itemcreate(sender as object, e as datagriditemeventargs)
if (e.item.itemtype=Listitemtype.Header) then
checka=e.item.findcontrol("checkall")
end if
end sub
sub chkall_onchanged(sender as object,e as eventargs)
dim i as integer
if checka.checked=true then
for i=0 to mydg.items.count-1
dim chk as checkbox=mydg.items(i).cells(0).findcontrol("checkdel")
chk.checked=true
next
else
for i=0 to mydg.items.count-1
dim chk as checkbox=mydg.items(i).cells(0).findcontrol("checkdel")
chk.checked=false
next
end if
end sub
</script>