//File:Window.xaml.vb Imports System Imports System.Text Imports System.Windows Imports System.Windows.Controls Imports System.Windows.Data Imports System.Windows.Documents Imports System.Windows.Input Imports System.Windows.Media Imports System.Windows.Media.Imaging Imports System.Windows.Shapes Imports System.Collections.Generic Imports System.Diagnostics Imports System.Collections Imports System.Data Imports System.Data.OleDb Imports System.ComponentModel Imports System.Xml Namespace WpfApplication1 Public Class AgeToForegroundConverter Implements IValueConverter Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.Convert Debug.Assert(targetType Is GetType(Brush)) Dim age As Integer = Integer.Parse(value.ToString()) Return (If(age > 60, Brushes.Red, Brushes.Black)) End Function Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.ConvertBack Throw New NotImplementedException() End Function End Class Public Partial Class Window1 Inherits Window Private doc As XmlDocument Public Sub New() InitializeComponent() doc = New XmlDocument() doc.LoadXml("" & vbCr & vbLf & " " & vbCr & vbLf & " " & vbCr & vbLf & " " & vbCr & vbLf & "") Dim manager As New XmlNamespaceManager(doc.NameTable) manager.AddNamespace("sb", "http://company.com") Binding.SetXmlNamespaceManager(stackPanel, manager) Dim b As New Binding() b.XPath = "/sb:Company/sb:Employee" b.Source = doc stackPanel.SetBinding(StackPanel.DataContextProperty, b) AddHandler Me.birthdayButton.Click, AddressOf birthdayButton_Click End Sub Private Sub birthdayButton_Click(sender As Object, e As RoutedEventArgs) Dim view As ICollectionView = CollectionViewSource.GetDefaultView(stackPanel.DataContext) Dim person As XmlElement = DirectCast(view.CurrentItem, XmlElement) person.SetAttribute("Age", (Integer.Parse(person.Attributes("Age").Value) + 1).ToString()) Console.WriteLine(person.Attributes("Name").Value) Console.WriteLine(person.Attributes("Age").Value) End Sub End Class End Namespace