ASP.NET入门教程 8.4 删除记录[3]

 我来答
天然槑17
2022-10-08 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6376
采纳率:100%
帮助的人:36.1万
展开全部

    操作回顾

    这个模式和修改数据的其他方式是一样的 数据源控件必须具有DeleteCommand 在选择Configure Data Source向导的Advancd对话框中的选项时 VWD将为您创建DeleteCommand VWD还创建了一组DeleteParameters 将在WHERE子句中使用这些参数以标识要删除的记录 与UPDATE一样 VWD试图在DetailsView的DeleteParameters中匹配每一个字段 这在某些情况下可能是有必要的 但对我们而言只要匹配FixtureID就可以了

    然后激活数据绑定控件的删除功能 从而使得VWD在这个数据绑定控件中添加了一个类型为Delete的CommandField 术语 field 在这里有一些奇怪 因为不存在与数据表中的字段的连接 但它是数据绑定控件的一个附加部分 其呈现类似于一个字段

    在完成 本章中的这些练习的时候您可能己经注意到有两种方式可以显示和修改比赛日程 GridView和Details View 当在其中一个控件内编辑数据之后 所做的修改并不会反映到另一个控件中 为处理这个问题需要给数据源控件添加代码 虽然所需的只是一行代码 但是需要在多个位置添加 这是因为有多种方式可以修改数据 可以插入新的赛程安排 编辑已有的赛程记录或删除赛程记录 每一种修改方式都会使SqlDataSource控件触发一个事件 正是在这个事件内必须为其他控件绑定数据

    完成这项任务的代码如下所示

 

Protected Sub SqlDataSource _Deleted(ByVal sender As Object _

              ByVal e As System Web UI WebControls SqlDatasourceStatusEventArgs)_

        Handles SqlDataSource Deleted

      DetailsView DataBind()

     End Sub

    

      Protected Sub SqlDataSource _Inserted(ByVal sender As Object _

              ByVal e As System Web UI WebControls SqlDatasourceStatusEventArgs)_

        Handles SqlDataSource Inserted

      DetailsView DataBind()

     End Sub

       

      Protected Sub SqlDataSource _Updated(ByVal sender As Object _

              ByVal e As System Web UI WebControls SqlDatasourceStatusEventArgs)_

        Handles SqlDataSource Updated

      DetailsView DataBind()

     End Sub

    

      Protected Sub SqlDataSource _Deleted(ByVal sender As Object _

              ByVal e As System Web UI WebControls SqlDatasourceStatusEventArgs)_

        Handles SqlDataSource Deleted

      DetailsView DataBind()

     End Sub

 

      Protected Sub SqlDataSource _Inserted(ByVal sender As Object _

              ByVal e As System Web UI WebControls SqlDatasourceStatusEventArgs)_

        Handles SqlDataSource Inserted

      DetailsView DataBind()

     End Sub

 

      Protected Sub SqlDataSource _Updated(ByVal sender As Object _

              ByVal e As System Web UI WebControls SqlDatasourceStatusEventArgs)_

        Handles SqlDataSource Updated

      DetailsView DataBind()

     End Sub

    可以看到对每个控件有 个事件 Deleted事件在删除一条记录后触发 Inserted事件在增加一条新记录后触发 而Updated事件在更新了一条记录之后触发 虽然使用GridView控件显示一组数据 同时使用DetaiIsView控件显示其他数据 这些事件看起来却是一样的 因为触发事件的是SqlDataSource控件 对于GridView控件 该控件绑定到SqlDataSource 需要刷新的是Details View控件 因此DataBind()方法是在这个DetailsView控件上调用的 该方法指示它重新获取数据 对SqlDataSource 的事件也有类似的过程 这些事件由DetailsView使用 但这次DataBind()方法是在GridView 控件上调用的 这是一个简单的过程 当一个控件中的数据发生变化时 刷新另一个控件中的数据

   ASP NET 入门教程完整版

lishixinzhi/Article/program/net/201311/14861

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式