2016-04-07 2 views
1

Как переместить (перетащить) окно wpf при максимальном режиме окна. Я использую ниже код, но когда окно максимизируется, тогда он не работает.Как переместить (перетащить) окно wpf при максимальном режиме окна

private void Window_MouseMove(object sender, MouseEventArgs e) 
    { 
     if (e.LeftButton == MouseButtonState.Pressed) 
     { 
      this.DragMove(); 
     } 
    } 

Как исправить эту проблему?

ответ

0

Используйте событие PreviewMouseLeftButtonDown, измените WindowState на обычный с помощью кода и после применения метода DragMove.

private void Grid_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) 
     {    
      if (WindowState == WindowState.Maximized) 
      { 
       WindowState = WindowState.Normal; 
      } 

      DragMove();   
     } 
+0

привет, ребята, когда мы устанавливаем WindowState = WindowState.Normal; то сначала измените размер окна, затем положение мыши и положение окна будут отличаться и не могут принимать поведение окна. вы можете проверить свою визуальную студию – ankit

0

При подписке на «Мышь move evet» вы можете изменить окно, ввести код heresize и location. Например

`if (this.WindowState == WindowState.Maximized) 
    { 
     this.Width = this.ActualWidth; 
     this.Height = this.ActualHeight; 
     this.Left = 0; 
     this.Top = 0; 
     this.WindowStartupLocation = WindowStartupLocation.Manual; 
     this.WindowState = WindowState.Normal; 
    }` 
+0

Мне нужна эта функция с режимом изменения размера. с сохранением того же положения мыши и окна приложения. – ankit

Смежные вопросы