/// <summary> /// Called when a window gets loaded. /// We initialize resizers and update constraints. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnWindowLoaded(object sender, RoutedEventArgs e) { var window = (Window)((FrameworkElement)sender).TemplatedParent; // Update constraints. UpdateWindowConstraints(window); // Attach resizer WindowResizer wr = new WindowResizer(window); wr.addResizerRight((Rectangle)window.Template.FindName("rightSizeGrip", window)); wr.addResizerLeft((Rectangle)window.Template.FindName("leftSizeGrip", window)); wr.addResizerUp((Rectangle)window.Template.FindName("topSizeGrip", window)); wr.addResizerDown((Rectangle)window.Template.FindName("bottomSizeGrip", window)); wr.addResizerLeftUp((Rectangle)window.Template.FindName("topLeftSizeGrip", window)); wr.addResizerRightUp((Rectangle)window.Template.FindName("topRightSizeGrip", window)); wr.addResizerLeftDown((Rectangle)window.Template.FindName("bottomLeftSizeGrip", window)); wr.addResizerRightDown((Rectangle)window.Template.FindName("bottomRightSizeGrip", window)); }