Mega Code Archive

 
Categories / C# / WPF
 

Add event handler to StackPanel in StackPanel resource

<Window x:Class="WpfApplication1.Window1"     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     Title="WPF" Height="150" Width="250">     <StackPanel>         <Popup AllowsTransparency="True" Height="100" HorizontalOffset="1cm" Name="myPopup"                     Placement="Right" StaysOpen="True" Width="200" >             <Border BorderBrush="Black" BorderThickness="2">                 <DockPanel Background="White" LastChildFill="True">                     <TextBlock Background="AliceBlue" DockPanel.Dock="Top"                                     FontSize="16" HorizontalAlignment="Stretch"                                     Margin="5" Text="A WPF Popup" />                         <Button Click="btnClosePopup_Click" Content="Close"                                  DockPanel.Dock="Bottom" Margin="5"                                  HorizontalAlignment="Right" MaxHeight="23"/>                         <Image DockPanel.Dock="Top" Margin="5"                                 Source="c:\image.gif" />                     </DockPanel>             </Border>         </Popup>         <StackPanel>             <StackPanel.Resources>                 <Style TargetType="{x:Type Button}">                     <Setter Property="Margin" Value="2" />                                             <EventSetter Event="Click" Handler="btnShowPopup_Click" />                 </Style>             </StackPanel.Resources>             <Button Content="Show Popup" Name="btnShowPopup" />         </StackPanel>     </StackPanel> </Window> //File:Window.xaml.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using System.Windows.Controls.Primitives; namespace WpfApplication1 {     public partial class Window1 : Window     {         public Window1()         {             InitializeComponent();         }         private void btnClosePopup_Click(object sender, RoutedEventArgs e)         {             myPopup.IsOpen = false;         }         private void btnShowPopup_Click(object sender, RoutedEventArgs e)         {                         myPopup.IsOpen = true;         }     } }