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.

child1.gif

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

child2.gif

Step 3

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

child3.gif

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 += newRoutedEventHandler(delegate(object sender, RoutedEventArgs e)
        {
            ChildWindowchldWindow = newChildWindow();
            MessageBox.Show(chldWindow.Getmessage());
            chldWindow.ShowDialog();
             });
        }
    }
}

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

child4.gif

 

Up Next
    Ebook Download
    View all
    Learn
    View all