How can I make a rounded-corners form in WPF?

you need to set WindowStyle to WindowStyle.None, which will remove the chrome, then you can allow transparency which is an attribute int the Window element, and set the background color to transparent. All of this can be done as attributes to the window tag.

WindowStyle="None"
AllowsTransparency="True"
Background="Transparent"

To make the corners rounded, use a border and set the cornerRadius property


I solved this by Windows.Clip.

<Window ....
    <Window.Clip>
        <RectangleGeometry Rect="0,0,857,483" RadiusX="25" RadiusY="25"/>
    </Window.Clip>
</Window>

But I think best way would be to use WindowChrome. You can solve resizing issue relatively easy. I am not finished with understanding this tech. So I can't post working solution right now. Here for the moment a link which seems to be useful. MS-Docs ChromeClass


Don't use AllowsTransparency it's slow and buggy, take a look at this link, look for the section "Office 2007 without Aero – Or, you are responsible for everything":

https://blogs.msdn.microsoft.com/wpfsdk/2008/09/08/custom-window-chrome-in-wpf/

EDIT: some of the techniques in this post are specific to Vista, but the "Office 2007 without Aero" section works on XP (and actually describes what software that is written for Vista has to fall-back to on XP).


You also need to make a transparent border around your window that's a few pixels wide, or else the edges of your rounded corners get cut off