如何通过 Xamarin Forms 使用 WPF 隐藏任务栏并最大化 window

How to hide task bar and maximize window using WPF through Xamarin Forms

我已经尝试了不同的选项,包括这个问题 Make my wpf application Full Screen (Cover taskbar and title bar of window) 中的信息,但没有任何帮助 只有 IgnoreTaskbarOnMaximize 属性 工作正常,但它是从与 Xamarin Forms 不兼容的 MahApps 使用的。也许你知道如何手动实现 IgnoreTaskbarOnMaximize?

据我所知 this tutorial on using Xamarin.Forms with WPF,Xamarin.Forms 应用程序是从 Window

创建的
public partial class MainWindow : FormsApplicationPage
{
    public MainWindow()
    {
        InitializeComponent();
        Forms.Init();
        LoadApplication(new My.App());
    }
}

有或没有相应的 XAML 文件(应该没有那么重要,除非 InitializeComponent 在没有 XAML 文件的情况下不被调用)。 如果你的window有一个XAML文件,我想this solution可以解决

<wpf:FormsApplicationPage ResizeMode="NoResize" WindowState="Maximized"  ...>
<!-- Not sure whether the grid is needed in here -->
</wpf:FormsApplicationPage>

否则您必须从 window class

中设置属性
public class MainWindow : FormsApplicationPage
{
    public MainWindow()
    {
        // whatever there is to be done before

        this.ResizeMode = ResizeMode.NoResize;
        this.WindowState = WindowState.Maximized;

        Forms.Init();
        LoadApplication(new My.App());
    }
}

解决方法很简单。如果你想让你的应用程序全屏(任务栏覆盖)不要将 WindowState 设置为最大化,只需在 InitializeComponent();

之后像这样更改 Width 和 Height
public MainWindow()
{
  InitializeComponent();

  Top = 0;
  Left = 0;
  Height = SystemParameters.PrimaryScreenHeight;
  Width = SystemParameters.PrimaryScreenWidth;

  Forms.Init();
  LoadApplication(new SharedForms.App());
}