【问题标题】:Full screen in WPF applicationWPF 应用程序中的全屏显示
【发布时间】:2013-04-10 07:54:53
【问题描述】:

我正在开发一个全屏显示的 WPF 应用程序。 此外,该应用程序应该适用于许多多维度的平板电脑。 我希望我的应用程序独立于其尺寸以全屏模式运行。

完成这项任务的最佳做法是什么?

【问题讨论】:

    标签: c# wpf xaml fullscreen


    【解决方案1】:

    只需将WindowState 设置为Maximized,将WindowStyle 设置为None

    【讨论】:

    • 同时将窗口设置为最顶层将确保没有其他窗口出现在您的窗口上方。
    • @YashGadhiya 你不应该这样做。
    • @LucasCordina 如果您是一个自助服务终端应用程序并且您希望其他应用程序不被关注,那么将自己置于首位并不是解决方案。 Topmost 只是呈现你在顶部 - 如果有其他东西可以引起关注,它仍然会,你将无法看到它。
    • (如果不是很明显,Yash 的盲目“也设置 Topmost”建议是一个非常糟糕的建议,因为如果一个典型的应用程序试图全屏这样做,你最终会得到其中一个损坏的全屏应用程序,当您尝试使用 alt-tab 切换到其他内容时,会让您盲目和摸索。我不知道为什么 Windows 甚至允许您这样做 - 任何应用程序都不应该能够如此严重地破坏桌面。)跨度>
    • 我们正在开发专为医院专用机器而设计的软件。用户永远不能出于任何原因使用 Alt-Tab 键进入新窗口。因此,在某些情况下,Topmost 是首选选项。
    【解决方案2】:

    将 WindowStyle 设置为 None,并将 WindowState 设置为 Maximized。可以这样完成:

    WindowState = WindowState.Maximized;
    WindowStyle = WindowStyle.None;
    

    或者在 xaml 中:

    <Window x:Class="FullScreenApplication.Window"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Full Screen WPF"
        WindowState="Maximized"
        WindowStyle="None">
    

    然后只需单击 ALT-TAB 即可退出全屏 wpf。它允许您在其他应用程序之间切换。

    【讨论】:

    • 其实,这似乎是错误的顺序。如果您首先最大化然后切换样式,则可以留下可见的任务栏。如果您先WindowStyle.None 并在之后WindowState.Maximized,则似乎不存在此问题。
    • @KurtVandenBranden 在您的回复中添加使用 ALT-TAB 非常有帮助。
    【解决方案3】:
    • WindowState.Maximized
    • SizeToContent.Manual

    【讨论】:

      【解决方案4】:

      全屏:

      oldstate = WindowState;
      WindowState = WindowState.Maximized;
      Visibility = Visibility.Collapsed;
      WindowStyle = WindowStyle.None;
      ResizeMode = ResizeMode.NoResize;
      Visibility = Visibility.Visible;
      Activate();
      

      回去:

      WindowState = oldstate;
      WindowStyle = WindowStyle.SingleBorderWindow;
      ResizeMode = ResizeMode.CanResize;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-18
        • 1970-01-01
        • 2011-12-23
        • 2010-10-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多