| 网站首页 | VB.Net实例分析 | .Net技术文摘 | 下载中心 | VB.Net书籍笔记 | .Net源码 | VBS脚本与组件调用 | Windows2008技术文摘 | 给我们留言 | 
最新公告:

  没有公告

您现在的位置: 乐博网 >> VB.Net实例分析 >> 数据库编程 >> 实例分析正文
最新推荐 更多内容
将LINQ to XML代码绑定到WPF控件
将LINQ to XML代码绑定到WPF控件
作者:Akyao    来源:乐博网整理     更新时间:2011-6-27

本文演示将LINQ to XML代码绑定到WPF控件,来自乐博网lob.cn。

如果你想下载本文的源代码RAR压缩集合包  请访问
VB2010源代码集合包(芋头糕)    http://www.lob.cn/code/utility/2795.shtml
特别感谢网友 芋头糕 将此资源提供乐博网分享,欢迎加入 40797788 的.Net超级qq群交流。

将LINQ to XML代码绑定到WPF 控件的代码 如下:

Imports System.ComponentModel
Imports System.Windows.Media

Namespace LinqToXmlDataBinding

    Partial Public Class Window1
        Inherits System.Windows.Window

        Private previousBrush As Brush

        Public Sub Window1()
            Try
                Me.InitializeComponent()
            Catch ex As Exception
                MsgBox(ex.ToString())
            End Try

        End Sub

        ''' <summary>
        ''' Save MyFavorites list on closing.
        ''' </summary>
        Protected Overrides Sub OnClosing(ByVal args As CancelEventArgs)
            Dim myFavorites = CType(CType(Resources("MyFavoritesList"), ObjectDataProvider).Data, XElement)
            myFavorites.Save("..\data\MyFavorites.xml")
        End Sub

        ''' <summary>
        ''' Play button event handler
        ''' </summary>
        Sub OnPlay(ByVal sender As Object, ByVal e As EventArgs)
            videoImage.Visibility = Visibility.Hidden
            mediaElement.Play()
        End Sub


        ''' <summary>
        ''' Stop button event handler
        ''' </summary>
        Sub OnStop(ByVal sender As Object, ByVal e As EventArgs)
            mediaElement.Stop()
            videoImage.Visibility = Visibility.Visible
        End Sub


        ''' <summary>
        ''' Add button event handler, adds currently selected video to MyFavorites
        ''' </summary>
        Sub OnAdd(ByVal sender As Object, ByVal e As EventArgs)
            Dim itemsList = CType(CType(Resources("MyFavoritesList"), ObjectDataProvider).Data, XElement)
            itemsList.Add(CType(videoListBox1.SelectedItem, XElement))
        End Sub


        '''' <summary>
        '''' Delete button event handler, delets currently selected video from MyFavorites
        '''' </summary>
        Sub OnDelete(ByVal sender As Object, ByVal e As EventArgs)
            Dim selectedItem = CType(videoListBox2.SelectedItem, XElement)
            If (Not selectedItem Is Nothing) Then
                If selectedItem.PreviousNode IsNot Nothing Then
                    Me.videoListBox2.SelectedItem = selectedItem.PreviousNode
                ElseIf (selectedItem.NextNode Is Nothing) Then
                    Me.videoListBox2.SelectedItem = selectedItem.NextNode
                    selectedItem.Remove()
                End If
            End If
        End Sub

        ''' <summary>
        ''' Searchbox event handler, Search videos by user specifed input
        ''' </summary>
        Private Overloads Sub OnKeyUp(ByVal sender As Object, ByVal e As KeyEventArgs)
            If (e.Key.Equals(Key.Enter)) Then
                Dim objectDataProvider = CType(Resources("MsnVideosList"), ObjectDataProvider)
                objectDataProvider.MethodParameters(0) = "http://soapbox.msn.com/rss.aspx?searchTerm=" & searchBox.Text
                objectDataProvider.Refresh()
            End If
        End Sub

        ''' <summary>
        ''' Event handlers for search options listed on the first page, simply update the static resource
        ''' "MsnVideosList" with the new argument and refresh it.
        ''' </summary>
        Private Overloads Sub OnMouseUp(ByVal sender As Object, ByVal e As System.Windows.Input.MouseButtonEventArgs)
            Dim content = CType(CType(sender, Label).Content, String)
            Dim objectDataProvider = CType(Resources("MsnVideosList"), ObjectDataProvider)
            Select Case (content)
                Case "Most Viewed"
                    objectDataProvider.MethodParameters(0) = "http://soapbox.msn.com/rss.aspx?listId=MostPopular"
                    objectDataProvider.Refresh()
                Case "Most Recent"
                    objectDataProvider.MethodParameters(0) = "http://soapbox.msn.com/rss.aspx?listId=MostRecent"
                    objectDataProvider.Refresh()
                Case "Top Favorites"
                    objectDataProvider.MethodParameters(0) = "http://soapbox.msn.com/rss.aspx?listId=TopFavorites"
                    objectDataProvider.Refresh()
                Case "Top Rated"
                    objectDataProvider.MethodParameters(0) = "http://soapbox.msn.com/rss.aspx?listId=TopRated"
                    objectDataProvider.Refresh()
                Case "My Favorites"
                    Dim msn = CType(objectDataProvider.Data, XElement)
                    Dim favorites = CType(CType(Resources("MyFavoritesList"), ObjectDataProvider).Data, XElement)
                    msn.ReplaceAll(favorites.Elements("item"))
            End Select
        End Sub

        ''' <summary>
        ''' Change the color or the search links as the mouse enters and leaves to indicate
        ''' that they are clickable
        ''' </summary>
        Private Overloads Sub OnMouseEnter(ByVal sender As Object, ByVal e As System.Windows.Input.MouseEventArgs)
            Dim myLabel = CType(sender, Label)
            previousBrush = myLabel.Foreground
            myLabel.Foreground = Brushes.Blue
        End Sub

        Private Overloads Sub OnMouseLeave(ByVal sender As Object, ByVal e As System.Windows.Input.MouseEventArgs)
            Dim myLabel = CType(sender, Label)
            myLabel.Foreground = previousBrush
        End Sub

    End Class
End Namespace

  • 上一篇:

  • 下一篇: 没有了
  • 【字体: 】【打印此文】【关闭窗口
      相关文章:(只显示最新16条)
    使用LINQ To SQL查询数据库的基本示例
    LINQ查看表达式树的方法(VB2010实例)
    在运行时创建LINQ查询的代码(VB2010实例)
    VB.Net使用LINQ获取单个进程使用的最大物理内存量
    VB.Net在LINQ中使用正则表达式设置查询条件
    VB.Net在LINQ to XML中通过内存将属性转换为元素
    VB.Net在LINQ to XML中使用XPath查询指定元素值
    VB.Net股票行情在LINQ to XML中执行文本到XML的流式转…
    VB.Net在LINQ to XML中将CSV文件转换为XML文件
    VB.Net在LINQ to XML中将XML文件转换为CSV文件
    VB.Net根据LINQ to DataSet查询创建DataView
    VB.Net返回LINQ to DataSet中指定行后的剩余记录
    VB.Net在LINQ to DataSet中根据字符串的长度排序
    VB.Net使用ToArray()方法强制立即执行LINQ查询
    VB.Net在LINQ to DataSet中使用联接实现交叉表查询
    简单LINQ实例

    | 设为首页 | 加入收藏 | 联系站长 | | 友情链接 | 版权申明 |
    乐博网欢迎各种媒体转载我们的原创作品[转载请注明出处];我们鼓励更多VB.Net开发者一起加入研究与探讨;如发现文章访问错误、内容错误或版权疑问、内容有违相关法律(如涉及政治、色情、反动或散布虚假有害信息)等情况,请及时向我们举报,我们将及时纠正!
    联系邮箱:Shiny#vip.qq.com (#替换为@) QQ交流群: 40797788 [闽ICP备05014267号]