3

WPF でボーダレス ウィンドウを作成しました。ウィンドウを最大化するイベントを作成しましたが、最大化すると、ウィンドウの一部がタスク バーの後ろに隠れて、しばらくするとタスク バーの上に表示されることがあります。

ウィンドウが毎回タスクバーの上にあるようにするにはどうすればよいですか? 以下は私が実装した方法です:

private void OnMaximizedClicked(object sender, RoutedEventArgs e)
{
    this.WindowState = this.WindowState != WindowState.Normal ? WindowState.Normal : WindowState.Maximized;
}

TopMost プロパティを true に設定しようとしましたが、どちらも役に立ちませんでした。

4

2 に答える 2

1

これで修正されますが、もっとエレガントな方法があるはずだと思います:

this.WindowStyle = System.Windows.WindowStyle.SingleBorderWindow;
this.WindowState = this.WindowState != WindowState.Normal 
                 ? WindowState.Normal : WindowState.Maximized;
this.WindowStyle = System.Windows.WindowStyle.None;

ところで、私はこのWinForms answerから適応させました。したがって、WPF 関連ではなく、より広い検索ネットを投げることができます。

于 2012-07-29T19:34:40.673 に答える
0

ResizeMode を NoResize に設定すると、私の場合に役立ちました。

ResizeMode="NoResize"
于 2015-06-01T13:42:27.243 に答える