Mega Code Archive

 
Categories / C# / WPF
 

Dynamically add Button to a Grid and add Action listener

<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.cs using System.Windows; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Markup; using System.Xml; using System.IO; namespace WpfApplication1 {   public partial class Window1 : System.Windows.Window   {     public Window1()     {       InitializeComponent();       StringReader sr = new StringReader(@"<Button xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'          Foreground='BurlyWood' FontSize='20pt'>Click Me!</Button>");       XmlReader reader = XmlReader.Create(sr);       Button dynamicButton = (Button)XamlReader.Load(reader);       this.grid1.Children.Add(dynamicButton);       dynamicButton.Click += button1_Click;         }     private void button1_Click(object sender, RoutedEventArgs e)     {       MessageBox.Show("Dynamic Button Loaded From XAML String");     }   } }