Monday 23 January 2012

Child Window in WPF


Child Window in WPF

Let us assume there is a requirement,
1. On click event of button, a new child window should open.
2. While child window is open, the parent window should be inactive.
So start with

Step 1

Create a WPF application. And drag and drop a Button on the MainPage.
clip_image002

Step 2

Right click on the WPF project and new item and select a WPF Window from WPF tab. Rename window to ChildWindow.xaml
clip_image004

Step 3

Now on the click event of button child window will get open.
clip_image006

On the button click event

1. An instance of Child window is being created
2. Then ShowDialog() method is being called to open the child window .

MainPage.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;
namespace WpfApplication2
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            BtnNewWindow.Click += new RoutedEventHandler(delegate(object sender, RoutedEventArgs e)
                                                          {
                                                              ChildWindow chldWindow = new ChildWindow();
                                                              MessageBox.Show(chldWindow.Getmessage());
                                                              chldWindow.ShowDialog();
                                                          });
        }
    }
}

So on running on the click of button new child window being open.


Posted by clip_image007

No comments :