【问题标题】:UWP Hide Window Title Bar controlsUWP 隐藏窗口标题栏控件
【发布时间】:2021-11-04 18:56:58
【问题描述】:

我正在维护一个在公共大屏幕上显示实时内容的应用程序。

有 2 个窗口,主窗口允许用户选择要在大屏幕上显示的内容,另一个是由安装的大屏幕驱动程序捕获并显示在大屏幕上的新窗口。

问题来自于一个大客户报告说大屏幕内容显示标题栏控件(最小化、最大化和关闭)并且他的大屏幕驱动程序只允许他捕获整个窗口。

这是一个关于我如何创建窗口的代码示例:

    public Frame PublicScreenFrame { get; private set; }

    private async void CreateWindow()
    {
        var window = await AppWindow.TryCreateAsync();
        window.RequestSize(new Size(500, 500)); //Configured resolution for the screen
        window.TitleBar.ExtendsContentIntoTitleBar = true; //I try to make the TitleBar transparent, but the controls still there
        PublicScreenFrame = new Frame();
        ElementCompositionPreview.SetAppWindowContent(window, PublicScreenFrame);

        await window.TryShowAsync();
    }

我发现我可以使标题栏透明并更改其控件前景的颜色,但不能使它们透明或不可见。

是否有任何解决方法,但是隐藏标题栏控件是 hacky 和过度设计的? 有什么方法可以让窗口以指定的分辨率进入“窗口化全屏”模式,从而解决问题?

【问题讨论】:

  • 如果答案已经解决了您的问题,请mark它被接受

标签: xaml uwp windows-community-toolkit uwp-navigation


【解决方案1】:

有什么办法可以让窗口进入“窗口化全屏”模式

对于这种情况,你可以参考Projection sample,当你调用StartProjectingAsync方法时,它会在第二个监视器中显示全屏窗口。

await ProjectionManager.StartProjectingAsync(rootPage.ProjectionViewPageControl.Id, thisViewId);

您还可以使用SwapDisplaysForViewsAsync 切换主窗口和第二窗口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-29
    • 1970-01-01
    • 2010-12-04
    • 1970-01-01
    • 2012-05-31
    • 2014-11-18
    • 2023-03-16
    相关资源
    最近更新 更多