广·西·电·脑·服·务·网                                     设为首页  收藏本站
首 页 IT 报 道 操作系统 硬件学院 软件学院 网络学院 服 务 器 软件下载
DIY经验 数据恢复 维修宝典 电脑保养 故障症状 黑客安全 病毒快报 电脑优化
维修网点 IT 黄 页 网络游戏 大师答疑 网站技术 动漫游戏 服务社区 素材图片
 广西电脑服务网 ·广西最大的电脑服务平台
您现在的位置: 广西电脑维修在线 >> 网站技术 >> .NET技术 >> .NET基础 >> 网站技术正文
EditCommandColumn
作者:佚名 文章来源:不详 点击数: 更新时间:2007-2-3 15:09:49


    EditCommandColumn 最主要的功能是利用LinkButton 或PushButton 来下达编辑资料的命令,并且可以触发DataGrid Web 控件的事件。EditCommandColumn 进入编辑模式的时候会产生TextBox 让使用者编辑,也可以和TemplateColumn 一起配合使用,我们后面介绍TemplateColumn 的时候会说明。其使用语法如下所示:

<ASP:EditCommandColumn
ButtonType="LinkButton | PushButton"
CancelText="CancelButtonCaption"
EditText="EditButtonCaption"
FooterText="FooterText"
HeaderImageUrl="url"
HeaderText="HeaderText"
ReadOnly="True | False"
SortField="DataSourceFieldToSortBy"
UpdateText="UpdateButtonCaption"
Visible="True | False"
/>

其中除了共同基础属性以及样式对象外,常用的属性如下表所示:
    当使用者点选了显示EditText 的控件时,DataGrid Web 控件会自动触发OnEditCommand 事件,并执行OnEditCommand 属性所指定的事件程序;倘若点选了显示UpdateText 以及CancelText内容的控制像,也一样分别自动触发OnUpdateCommand 以及OnCancelCommand 事件。下列程序代码范例增加了一个EditCommandColumn 字段,并且显示使用者点选了哪一个按钮:

<%@Import Namespace=System.Data.ADO%>
<%@Import Namespace=System.Data%>
<!--#Include File="GetTable.inc"-->
<Html>
<Form Runat="Server">
<ASP:DataGrid Id="dgA" AllowPaging="True" PageSize="5"
OnPageIndexChanged="dgA_PageChg" Runat="Server"
PagerStyle-Mode="NumericPages" BorderColor="#808080"
HeaderStyle-Font-Names="Courier New"
HeaderStyle-BackColor="#D1DCEB"
HeaderStyle-Font-Bold="True" HeaderStyle-HorizontalAlign="Center"
OnEditCommand="dgA_ECmd" OnUpdateCommand="dgA_UCmd"
OnCancelCommand="dgA_CCmd" >
<Property Name="Columns">
<ASP:BoundColumn
HeaderText="姓名"
DataField="UserName"/>
<ASP:BoundColumn
HeaderText="电话"
DataField="UserTel"/>
<ASP:EditCommandColumn
HeaderText="编辑"
ButtonType="PushButton"
EditText="编辑"
UpdateText="更新"
CancelText="放弃"/>
</Property>
</ASP:DataGrid>
</Form>
<ASP:Label Id="Label1" Runat="Server"/>
<Script Language="VB" Runat="Server">
Dim dtDataTable As DataTable=GetTable("CH08\MyWeb.mdb", "Members")
Sub Page_Load(Sender As Object, e As EventArgs)
If Page.IsPostBack=False Then
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End If
End Sub
Sub dgA_PageChg(Sender As Object, e As DataGridPageChangedEventArgs)
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End Sub
Sub dgA_ECmd(Sender As Object, e As DataGridCommandEventArgs)
Label1.Text="您点选了第" & (e.Item.ItemIndex+1).ToString & " 个字
段的编辑."
dgA.EditItemIndex=e.Item.ItemIndex
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End Sub
Sub dgA_UCmd(Sender As Object, e As DataGridCommandEventArgs)
Label1.Text="您点选了第" & (e.Item.ItemIndex+1).ToString & " 个字
段的更新."
dgA.EditItemIndex=-1
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End Sub
Sub dgA_CCmd(Sender As Object, e As DataGridCommandEventArgs)
Label1.Text="您点选了第" & (e.Item.ItemIndex+1).ToString & " 个字
段的放弃."
dgA.EditItemIndex=-1
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End Sub
</SCRIPT>
</Html>


    上述范例中,由于DataTable 对象要让其它事件程序使用,所以我们在网页阶层的宣告区宣告。我们也指定了OnEditCommand 事件、OnUpdateCommand 事件以及OnCancelCommand 事件;当使用者按下「编辑」按钮时会自动触发我们所指定的dgA_ECmd 事件程序,如下程序代码范例所示:

Sub dgA_ECmd(Sender As Object, e As DataGridCommandEventArgs)
Label1.Text="您点选了第" & (e.Item.ItemIndex+1).ToString & " 个字
段的编辑."
dgA.EditItemIndex=e.Item.ItemIndex
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End Sub

    上述程序代码片段将DataGrid 的EditItemIndex 属性设定为使用者所点选记录的索引值,所以该笔记录就会进入编辑模式;此时原来字段内的「编辑」按钮就会变成「更新」以及「放弃」。使用者若编辑完毕后再点选「更新」或「放弃」按钮时,即触发所指定的OnUpdateCommand或是OnCancelCommand 事件;这些事件最后将DataGrid 对象的EditItemIndex 属性设为-1,表示没有任何项目被编辑,让数据回复到原来的显示模式。如下图所示:




 
网站技术录入:admin    责任编辑:admin 
  • 上一篇网站技术:

  • 下一篇网站技术:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

     IT图片报道

    联想D222到货22寸LCD迅速串红市场

    入门超频王!双敏945PL狂跑1200 F

    冠捷春季新品197V+突破高对比上市

    核心500MHz!性价比王者双敏X1650
     IT热点报道

    普通IT报道 联想D222到货22寸LCD迅速串红市场
    推荐IT报道 入门超频王!双敏945PL狂跑1200 FSB!
    推荐IT报道 冠捷春季新品197V+突破高对比上市
    普通IT报道 核心500MHz!性价比王者双敏X1650GT登场!
    普通IT报道 549元双敏945GC主板到货!
    普通IT报道 宏碁笔记本存储王As3683升级送礼!
    普通IT报道 魅族MP3全线暴跌 M6SP4G版不足700
    普通IT报道 OPPO首款顶级4.3寸大屏MP4 A3上市
    普通IT报道 维修服务拯救PC,谁拯救维修服务?
    普通IT报道 影驰8800GTS游戏盒子上市
    关于公司 | 免责声明 | 广告服务 | 招贤纳士 | 联系我们 | 友情链接 | 网站地图 1 2 3
    Copyright@2005 - 2006  http://www.GXF.com.cn  All Right Reserved  
    桂ICP备06002242号

    技术咨询
    22097366
    10231086
    30636841
    技术交流群
    27717914