Mega Code Archive

 
Categories / VB.Net Tutorial / WPF
 

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