У меня есть приложение WPF, которое использует пользовательскую рамку окна. Моя проблема в том, что я не могу «отсоединить» мое развернутое окно с помощью Aero Snap в Windows 7.
Свойства моего окна:
AllowsTransparency
установлено на true
WindowStyle
установлено на None
ResizeMode
установлено на CanResizeWithGrip
.
Я управляю движением перетаскивания окна так:
private void TitleBarGrid_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
DragMove();
}
Я могу закрепить окно влево, вправо и вверх, и оно будет вести себя как обычные окна (разверните, чтобы заполнить левую половину экрана, разверните, чтобы заполнить правую половину экрана, развернутое соответственно).
Я не уверен, как работает Aero Snap, но мне кажется странным, что обычные окна WPF (нестандартные окна) работают просто отлично; Я могу снять их, если они развернуты без проблем. Почему тогда применение вышеуказанных свойств к моему окну нарушает это?
Возможно ли мне сделать какую-то пользовательскую обработку сообщений WM для этой работы?