Chromeブラウザを最大化すると、ウィンドウの上部にタブヘッダーが表示されます。同様のことをすることはできますか?WPFでは、通常の最小化、最大化、および閉じるボタンを持つ境界線のないウィンドウを作成できますか?
5
A
答えて
20
もちろん、あなたはこれらのボタンを自分でリメイクする必要があります(難しくはありませんが、心配はありません)。あなたのMainWindow.xamlで
:
<Window ...
Title="" Height="Auto" Width="Auto" Icon="../Resources/MyIcon.ico"
ResizeMode="NoResize" WindowStartupLocation="CenterScreen"
WindowStyle="None" AllowsTransparency="True" Background="Transparent"
...>
<Canvas>
<Button /> <!-- Close -->
<Button /> <!-- Minimize -->
<Button /> <!-- Maximize -->
<TabControl>
...
</TabControl>
</Canvas>
</Window>
次に、あなただけのボタンを配置しなければならないとTabControlのキャンバスに望んだとして、ルックアンドフィールをカスタマイズ。
EDIT:
<Window ...
Title="" Height="Auto" Width="Auto" Icon="../Resources/MyIcon.ico"
ResizeMode="NoResize" WindowStartupLocation="CenterScreen"
WindowStyle="None" AllowsTransparency="True" Background="Transparent"
...>
<Window.CommandBindings>
<CommandBinding Command="{x:Static SystemCommands.CloseWindowCommand}" CanExecute="CommandBinding_CanExecute_1" Executed="CommandBinding_Executed_1" />
<CommandBinding Command="{x:Static SystemCommands.MaximizeWindowCommand}" CanExecute="CommandBinding_CanExecute_1" Executed="CommandBinding_Executed_2" />
<CommandBinding Command="{x:Static SystemCommands.MinimizeWindowCommand}" CanExecute="CommandBinding_CanExecute_1" Executed="CommandBinding_Executed_3" />
</Window.CommandBindings>
<Canvas>
<Button Command="{x:Static SystemCommands.CloseWindowCommand}" Content="Close" />
<Button Command="{x:Static SystemCommands.MaximizeWindowCommand}" Content="Maximize" />
<Button Command="{x:Static SystemCommands.MinimizeWindowCommand}" Content="Minimize" />
<TabControl>
...
</TabControl>
</Canvas>
</Window>
:.NET 4.5を中に最小化/最大化/閉じるためのコマンドで構築されたあなたは、.NET 4.5を使用している場合、あなたが行うことができますので、
SystemCommands.CloseWindowCommand
/
SystemCommands.MaximizeWindowCommand
/
SystemCommands.MinimizeWindowCommand
です
そして、あなたのC#コードビハインドで:
private void CommandBinding_CanExecute_1(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = true;
}
private void CommandBinding_Executed_1(object sender, ExecutedRoutedEventArgs e)
{
SystemCommands.CloseWindow(this);
}
private void CommandBinding_Executed_2(object sender, ExecutedRoutedEventArgs e)
{
SystemCommands.MaximizeWindow(this);
}
private void CommandBinding_Executed_3(object sender, ExecutedRoutedEventArgs e)
{
SystemCommands.MinimizeWindow(this);
}
これはまさにワットのような近い/最大化/最小化する作品を作ります通常のウィンドウ。
もちろん、System.Windows.Interactivity
を使用してC#をViewModelに移動することができます。
3
リボンAPIを使用してChromeの領域を描画する方法について説明しているこのブログ記事を参照しながら、標準のWindowsボタンを維持してください。あなたがしたいと思う何
http://blogs.msdn.com/b/wpfsdk/archive/2010/08/25/experiments-with-windowchrome.aspx
関連する問題
- 1. 最小化/最大化/閉じるボタンのツールチップとDevexpress lookAndFeel
- 2. JavaのJFrameウィンドウでデフォルトの最小化/最大化と閉じるボタンを非表示にする方法は?
- 3. ウィンドウから最小化/最大化ボタンを削除する、OpenTK
- 4. Win32の最小化、最大化、閉じるボタンを無効にする
- 5. WPFウィンドウが最小化/最大化されない
- 6. 実行時に最小化、最大化、および閉じるボタンの近くのTFormキャプションにカスタムボタンを追加することはできますか?
- 7. Matlab Figureウィンドウの最大化/最小化と閉じるボタンを非表示にします
- 8. 最小化、最大化、および閉じるボタンのデフォルトサイズを取得するために使用するUxtheme関数は何ですか?
- 9. WPFウィンドウを最大限に最大化
- 10. 閉じる、最小化、または最大化するとフォームがハングアップする
- 11. Qt C++最小化と最大化ウィンドウ
- 12. 閉じる、最大化、最小化ボタンでPictureBoxを作成するにはどうすればよいですか?
- 13. ウィンドウの最大化/最小化を無効にする
- 14. WPF - ウィンドウの最小化ボタンを非表示にする
- 15. 子ウィンドウを閉じて親を最小化する
- 16. 最小化されたウィンドウのRESTORED境界を取得するには?
- 17. MFC:ボタンのクリックでウィンドウを最小化する方法は?
- 18. JDialogまたはJPanelに最小化/最大化ボタンを追加するには
- 19. 隣接するモニタに境界線を表示する、最大化されたスタイル付きウィンドウについては何ができますか?
- 20. AngularJS通貨、最大および最小のui-mask
- 21. リッチで最小化と最大化ボタンを追加する方法:ポップアップパネルウィンドウ
- 22. javafx2のウィンドウを最小化
- 23. フォームのAutoScrollMinSizeグリッチ最小化/最大化
- 24. VBscriptまたはバッチファイルを使用してWindowsを最小化および最大化
- 25. SDL最小化ウィンドウ
- 26. 最大および最小日付
- 27. C#.Netで最小化して最大化する方法は?
- 28. タブレットモードでウィンドウの幅を最大化できないようにする
- 29. 最小化/最大化コードVisual Studio(C#)
- 30. 道場ダイアログの背景(フレームの境界線、閉じるボタン、など)がない
は、窓枠(非クライアント領域)に直接ものを描くです。これはWPFでは非常に可能です。あなたが周りを検索する場合は、あなたが使用できる何かを見つけることができるかもしれません。 – BoltClock