Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

【WPF小品】Silverlight中与数据库交互入门教程 -- 第三课

时 间:2013-07-18 10:12:42
作 者:煮江品茶   ID:10802  城市:武汉
摘 要:【WPF小品】Silverlight中与数据库交互入门教程 -- 第三课
正 文:

第三课 设计数据库交互处理逻辑


  本课描述如此编写增删改代码,实现与数据库的交互。


示例文件:

点击下载此附件
 

上一课



21、转到MainPage.xaml中,在DataGrid控件的右侧设计数据编辑区域的若干控件;

22、将右侧的TextBox控件的Text属性和DatePicker控件的SelectedDate属性逐一绑定到DataGrid控件的SelectedItem的相关路径上。其中班级ID文本框控件的Text属性绑定到cob班级ID的SelectedValue路径上;

23、保存并生成解决方案,然后按F5测试,测试效果为选中DataGrid的记录后,右侧编辑区域将数据呈现出来。


图示08:


24、转到MainPage.xaml.vb中,编写增删改的处理逻辑,代码如下:

    Private Sub OnSubmitCompleted(ByVal so As SubmitOperation)
        '增删改时,通过SubmitChanges方法绑定该事件,以完成提交返回后的操作。
        SetDataGrid()
    End Sub


    Private Sub btn新增_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles btn新增.Click
        If String.IsNullOrEmpty(txt班级ID.Text) Then Exit Sub
        Dim student As New 学生表
        student.姓名 = txt姓名.Text
        student.性别 = txt性别.Text
        If date生日.SelectedDate Is Nothing = False Then
            student.生日 = date生日.SelectedDate
        End If
        student.班级ID = CInt(txt班级ID.Text)
        myD.学生表s.Add(student)
        myD.SubmitChanges(AddressOf OnSubmitCompleted, Nothing) '提交数据并绑定OnSubmitCompleted事件
    End Sub


    Private Sub btn修改_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles btn修改.Click
        If String.IsNullOrEmpty(txt学生ID.Text) Then Exit Sub
        Dim student As New 学生表
        student = myD.学生表s.Single(Function(x) x.学生ID = CInt(txt学生ID.Text))
        student.姓名 = txt姓名.Text
        student.性别 = txt性别.Text
        If date生日.SelectedDate Is Nothing = False Then
            student.生日 = date生日.SelectedDate
        End If
        myD.SubmitChanges(AddressOf OnSubmitCompleted, Nothing) '提交数据并绑定OnSubmitCompleted事件
    End Sub


    Private Sub btn删除_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles btn删除.Click
        If String.IsNullOrEmpty(txt学生ID.Text) Then Exit Sub
        Dim student As New 学生表
        student = myD.学生表s.Single(Function(x) x.学生ID = CInt(txt学生ID.Text))
        myD.学生表s.Remove(student)
        myD.SubmitChanges(AddressOf OnSubmitCompleted, Nothing) '提交数据并绑定OnSubmitCompleted事件
    End Sub


    Private Sub DataGrid1_GotFocus(sender As Object, e As System.Windows.RoutedEventArgs) Handles DataGrid1.GotFocus
        ResetDatePickerBinding()
    End Sub


    Private Sub ResetDatePickerBinding()
        'DatePicker控件在选择日期后,原在xaml中设置的绑定失效,需重新设置
        Dim b As Binding = New Binding("SelectedItem.生日")
        b.ElementName = "DataGrid1"
        b.Mode = BindingMode.OneWay
        date生日.SetBinding(DatePicker.SelectedDateProperty, b)
    End Sub


25、保存、生成、测试运行。


图示09:



Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助