Click here to Skip to main content
12,942,930 members (42,327 online)
Rate this:
Please Sign up or sign in to vote.
See more:
Does wpf user control contain a method to close, like close in windows form, thanks.
Posted 4-Jul-10 23:05pm
Updated 4-Jul-10 23:25pm
Abhinav S415K
Rate this: bad
Please Sign up or sign in to vote.

Solution 3

Well UserControl and Form are two different things. UserControls are placed inside the Window. You have a Close method tied up with Window. If you want to force the Window.Close from inside of UserControl, definitely you can do so using the following.

Window parentwin = Window.GetWindow();

But if you want to close only the UserControl, why dont you deal with Visibility. You can make the UserControl.Visibility = Collapsed, or you can remove the UserControl from the Parent using

I dont know what you wanted from this.
ihebiheb 28-Mar-13 13:37pm
Window parentwin = Window.GetWindow(this);

this one worked for me
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

This is an insane question. How would a control 'close' when it is on a form ? That makes zero sense. If you want to 'close' a control, you can animate it, or just set it's visibility to collapsed ( or both ). A control can't be 'closed' because it is not a form, not in any framework I've ever used.
Rate this: bad
Please Sign up or sign in to vote.

Solution 5


You could just remove the control from the parent Control. This is what I did assuming that the parent control is a Canvas
(this.Parent as Canvas).Children.Remove(this);

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

    Print Answers RSS
Top Experts
Last 24hrsThis month
OriginalGriff 4,565
CHill60 2,860
Maciej Los 2,178
Jochen Arndt 1,900
ppolymorphe 1,755

Advertise | Privacy | Mobile
Web02 | 2.8.170518.1 | Last Updated 30 Sep 2012
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100