WPFカスタムウィンドウ:Win7 Aero Snapで最大化されたウィンドウを「Unsnap」できません

StackOverflow https://stackoverflow.com/questions/3924129

  •  29-09-2019
  •  | 
  •  

質問

カスタムウィンドウフレームを使用するWPFアプリケーションがあります。私の問題は、Windows 7のAero Snapで最大化されたウィンドウを「Unsnap」できないことです。

私の窓のプロパティ:

  • AllowsTransparency に設定されています true
  • WindowStyle に設定されています None
  • ResizeMode に設定されています CanResizeWithGrip.

私はそのようなウィンドウのドラッグの動きを処理します:

private void TitleBarGrid_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
    DragMove();
}

窓を左、右、上部にドッキングし、通常のウィンドウのように動作させることができます(画面の左半分を拡張して、それぞれ画面の右半分を拡張して最大化します)。

Aero Snapがどのように機能するかはわかりませんが、私が奇妙だと思うのは、通常のWPF Windows(非カスタムウィンドウ)が正常に機能することです。問題なく最大化されている場合、私はそれらを解除できます。なぜ上記のプロパティを私の窓に適用するのはなぜですか?

この作業を行うには、カスタムWMメッセージ処理を行う必要がある可能性はありますか?

役に立ちましたか?

解決

私はただ使用することになりました WPFシェル統合ライブラリ Microsoftから。エアロのスナップを機能させるために必要なすべての低レベルの魔法を処理します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top