XmlDataProvider and XmlNamespaceMapping : XmlDataProvider « Windows Presentation Foundation « VB.Net Tutorial

Home
VB.Net Tutorial
1.Language Basics
2.Data Type
3.Operator
4.Statements
5.Date Time
6.Class Module
7.Development
8.Collections
9.Generics
10.Attributes
11.Event
12.LINQ
13.Stream File
14.GUI
15.GUI Applications
16.Windows Presentation Foundation
17.2D Graphics
18.I18N Internationlization
19.Reflection
20.Regular Expressions
21.Security
22.Socket Network
23.Thread
24.Windows
25.XML
26.Database ADO.net
27.Design Patterns
VB.Net
VB.Net by API
VB.Net Tutorial » Windows Presentation Foundation » XmlDataProvider 
16.103.1.XmlDataProvider and XmlNamespaceMapping
<Window x:Class="XmlBinding.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:local="clr-namespace:XmlBinding"
  Title="XmlBinding" Height="325" Width="400">
  <Window.Resources>
    <XmlDataProvider x:Key="Company" XPath="/sb:Company/sb:Employee">
      <XmlDataProvider.XmlNamespaceManager>
        <XmlNamespaceMappingCollection>
          <XmlNamespaceMapping Uri="http://company.com" Prefix="sb" />
        </XmlNamespaceMappingCollection>
      </XmlDataProvider.XmlNamespaceManager>

      <x:XData>
        <Company xmlns="http://company.com">
          <Employee Name="A" Age="11" />
          <Employee Name="B" Age="12" />
          <Employee Name="C" Age="38" />
        </Company>
      </x:XData>
    </XmlDataProvider>

    <local:AgeToForegroundConverter x:Key="ageConverter" />
  </Window.Resources>
  <StackPanel DataContext="{StaticResource Company}">
    <ListBox ItemsSource="{Binding}" IsSynchronizedWithCurrentItem="True">
      <ListBox.GroupStyle>
        <x:Static Member="GroupStyle.Default" />
      </ListBox.GroupStyle>
      <ListBox.ItemTemplate>
        <DataTemplate>
          <TextBlock>
            <TextBlock Text="{Binding XPath=@Name}" />
            (age: <TextBlock Text="{Binding XPath=@Age}" Foreground="{Binding XPath=@Age, Converter={StaticResource ageConverter}}" />)
          </TextBlock>
        </DataTemplate>
      </ListBox.ItemTemplate>
    </ListBox>
    <TextBlock>Name:</TextBlock>
    <TextBox Text="{Binding XPath=@Name}" />
    <TextBlock>Age:</TextBlock>
    <TextBox Text="{Binding XPath=@Age}" Foreground="{Binding XPath=@Age, Converter={StaticResource ageConverter}}" />

 </StackPanel>
</Window>
//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 XmlBinding

  Public Partial Class Window1
    Inherits Window

    Public Sub New()

      InitializeComponent()
    End Sub

    Private Function GetCompanyView() As ICollectionView
      Dim provider As DataSourceProvider = DirectCast(Me.FindResource("Company"), DataSourceProvider)
      Return CollectionViewSource.GetDefaultView(provider.Data)
    End Function

  End Class

  Public Class AgeToForegroundConverter
    Implements IValueConverter
    Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfoAs Object Implements IValueConverter.Convert
      Debug.Assert(targetType Is GetType(Brush))

      Dim age As Integer = Integer.Parse(value.ToString())
      Return (If(age > 25, Brushes.Red, Brushes.Black))
    End Function

    Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfoAs Object Implements IValueConverter.ConvertBack

      Throw New NotImplementedException()
    End Function
  End Class

End Namespace
WPF Xml Data Provider And Xml Namespace Mapping
16.103.XmlDataProvider
16.103.1.XmlDataProvider and XmlNamespaceMappingXmlDataProvider and XmlNamespaceMapping
16.103.2.Use XamlReader to read a Xaml string and convert to a ControlUse XamlReader to read a Xaml string and convert to a Control
16.103.3.Load XmlDocument to XmlDataProviderLoad XmlDocument to XmlDataProvider
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.