2023-01-20 23:08:33 +08:00
|
|
|
using Avalonia.Controls;
|
2026-03-21 22:21:23 +08:00
|
|
|
using Avalonia.Input;
|
2023-01-20 23:08:33 +08:00
|
|
|
|
|
|
|
|
namespace Semi.Avalonia.Demo.Views;
|
|
|
|
|
|
|
|
|
|
public partial class MainWindow : Window
|
|
|
|
|
{
|
2026-03-21 22:21:23 +08:00
|
|
|
private WindowState _stateBeforeFullScreen = WindowState.Normal;
|
|
|
|
|
|
2023-01-20 23:08:33 +08:00
|
|
|
public MainWindow()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
2026-03-21 22:21:23 +08:00
|
|
|
KeyDown += FullScreenKeyDown;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void FullScreenKeyDown(object? sender, KeyEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (e.Key == Key.F11)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
ToggleFullScreen();
|
|
|
|
|
e.Handled = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ToggleFullScreen()
|
|
|
|
|
{
|
|
|
|
|
if (WindowState is not WindowState.FullScreen)
|
|
|
|
|
{
|
|
|
|
|
_stateBeforeFullScreen = WindowState;
|
|
|
|
|
WindowState = WindowState.FullScreen;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
WindowState = _stateBeforeFullScreen;
|
|
|
|
|
}
|
2023-01-20 23:08:33 +08:00
|
|
|
}
|
|
|
|
|
}
|