Use XamlReader to read a Xaml string and convert to a Control : XmlDataProvider « Windows Presentation Foundation « VB.Net






Use XamlReader to read a Xaml string and convert to a Control

Use XamlReader to read a Xaml string and convert to a Control
    

<Window x:Class="WpfApplication1.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="DynamicXAML" Height="300" Width="300">
  <Grid Name="grid1" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Window>
//File:Window.xaml.vb

Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Media
Imports System.Windows.Markup
Imports System.Xml
Imports System.IO

Namespace WpfApplication1

  Public Partial Class Window1
    Inherits System.Windows.Window

    Public Sub New()
      InitializeComponent()

      Dim sr As New StringReader("<Button xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' " & vbCr & vbLf & "        Foreground='BurlyWood' FontSize='20pt'>Click Me!</Button>")

      Dim reader As XmlReader = XmlReader.Create(sr)

      Dim dynamicButton As Button = DirectCast(XamlReader.Load(reader), Button)

      Me.grid1.Children.Add(dynamicButton)


      AddHandler dynamicButton.Click, AddressOf button1_Click
    End Sub

    Private Sub button1_Click(sender As Object, e As RoutedEventArgs)
      MessageBox.Show("Dynamic Button Loaded From XAML String")
    End Sub

  End Class
End Namespace

   
    
    
    
  








Related examples in the same category

1.XmlDataProvider and XmlNamespaceMappingXmlDataProvider and XmlNamespaceMapping
2.Load XmlDocument to XmlDataProviderLoad XmlDocument to XmlDataProvider