如何在不隐藏控制框的情况下隐藏 WPF 功能区窗口(启用 Aero)中的标题栏?

2024-03-21

我目前使用 WPF Ribbon Window 并在当前窗口中启用 Aero,如下图所示。我喜欢隐藏标题“模式测试仪”,因为没有足够的空间来显示它。但我还是需要原装windows控制盒以及当前标题(即使它会被隐藏)将显示在任务管理器和其他相关程序(如任务切换器和任务栏)中。


当我在线程中阅读和下载源代码时,我意外地找到了这个问题的答案RibbonWindow 中的 WPF 标题栏文本难以阅读 http://social.msdn.microsoft.com/Forums/en/wpf/thread/95d513a0-df83-4afc-836b-0e885a9ed929。解决此问题的最简单方法是通过应用程序资源字典隐藏功能区标题面板控件。

 <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
            xmlns:ribbonPre="clr-namespace:Microsoft.Windows.Controls.Ribbon.Primitives;assembly=RibbonControlsLibrary">
    <Style TargetType="{x:Type ribbonPre:RibbonTitlePanel}">
        <Setter Property="Visibility" Value="Hidden"/>
    </Style>
 </ResourceDictionary>

但是,功能区上下文选项卡也被隐藏。为了修复这个错误,我应该在加载当前窗口时将功能区标题面板的 Content Presenter 的内容设置为空字符串。

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    var titlePanel = Ribbon.Template.FindName("PART_TitleHost", Ribbon) as ContentPresenter;
    if (titlePanel != null)
    {
        titlePanel.Content = "";
    }
}

剩下的问题,我不知道为什么我不能在窗口 onload 事件中使用以下样式而不是硬编码。

<Style TargetType="{x:Type ribbonPre:RibbonTitlePanel}">
    <Setter Property="ContentPresenter.Content" Value=""/>
</Style>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在不隐藏控制框的情况下隐藏 WPF 功能区窗口(启用 Aero)中的标题栏? 的相关文章

随机推荐

  • Camel中如何动态添加和启动路由?

    我正在尝试从 Camel 的路线中删除一些样板 例如 让我们考虑两条相似的路线 并且可以生成它们的大部分内部内容 我创建了一个组件 模板 它创建了TemplateEndpoint 并修改了 XML 配置以使用模板组件 自定义方法Templa
  • 适用于 Android 的自定义旋转对话框

    如何制作自定义主题 Android Spinner 对话框 该博客有一个示例 可能可以解决您的问题 http www mokasocial com 2011 03 easily create a default custom styled
  • SKLearn Naive Bayes:在 tfidf 矢量化后添加特征

    因此 我的任务是训练一个电话记录模型 以下代码执行此操作 一些背景信息 x 是一个字符串列表 每个第 i 个元素是一个完整的转录本 y 是布尔值列表 表示调用的结果是正还是负 以下代码有效 但这是我的问题 我想将通话时长作为一项训练功能 我
  • 带 ProgressBar 的 Endless RecyclerView 用于分页

    我正在使用一个RecyclerView http developer android com reference android support v7 widget RecyclerView html并以十个为一组从 API 获取对象 对于
  • PHP 未在正确的位置回显

    我在我的 WordPress 网站上运行一些 PHP 代码 当 PHP 运行以回显某些信息时 它没有在正确的位置回显它 代码的缩写版本是 div class description cms div h2 Search By Category
  • 使用 Ruby On Rails 进行事务操作

    我在控制器内有一个复杂的操作 可以对数据库执行多个更新查询 我怎样才能做出这个动作行为类似于交易没有任何结构重构 MyModel transaction do begin model update stuff sub model updat
  • 如何让控件重绘 Windows 窗体?

    我不太确定 重绘 是我正在寻找的 我是手工设计 Windows 窗体的新手 我创建了一个类 它将使用 TableLayoutPanel 作为传递的变量 并在该表格布局面板中进行自己的设计 以便可以重用该控件并调整其参数以适应其包含的数据 我
  • 用于本机 C++ 的 C++/CLI 包装器,可在 C# 中用作参考

    标题解释了 我有本机 C dll 正在为其编写 C CLI 包装器 这些包装器将依次导入到 C 中作为参考 问题是在 C 中我看不到包装器中的类 从 DLL 导入 我应该使用哪些关键字以及如何重新声明我的本机 C 对象以在 C 中可见 好的
  • 角度从 1 开始 ngFor 索引

    ngFor索引是否可以从1而不是0开始 let data of datas let i index 1 没用 ngFor let item of items slice 1 let i index 切片管 https angular io
  • 在 Visual Studio 2015 中使用和导出 std::string 和 std::vector

    使用 VS2013 和合适的导出宏 我可以使用此示例代码导出 std string 和 std vector ifdef MSC VER Explicit template exports c EXPORT TEMPLATE templat
  • Qt 安装程序框架 - 在开始菜单中为所有用户创建快捷方式

    使用安装程序框架 我想为我的应用程序创建一个安装程序 该应用程序由管理员安装在 PC 上 然后该应用程序由不同的用户使用 在安装程序中 我创建从可执行文件到开始菜单的快捷方式 这是在installscript js通过命令 componen
  • Angularjs - 元素上的多个指令,其中一个是隔离范围

    想知道是否有人可以解释当前的行为 我有一个具有隔离范围的指令 称之为 dirA 然后我在上面添加了另一个指令 dirB 期望第二个指令获取isolate指令创建的每个范围 dirB 获取控制器范围 为什么它不能获得 dirA 为该元素创建的
  • Rails - 使用父级的范围父级验证嵌套属性的唯一性

    我在 Rails 中对具有父级的嵌套属性进行范围唯一性验证时遇到问题 背景 我有一个包含 3 个模型的 Rails 4 应用程序 app models account rb class Account lt ActiveRecord Bas
  • 在 C# 中实现这 3 个类的最佳方式:Vector、Direction(单位向量)、Point

    所有点都是向量 所有向量都是点 所有方向都是向量 并非所有向量都是方向 这不应该意味着不允许双向转换 我希望最好将运算符全部覆盖一次 因为它们都是完全相同的 在 C 中 我可以定义 class Vector float x y z 并执行
  • Couchbase 几秒后超时

    我有大约 100 200k 个小文档 其中包含 base64 编码的图像 非常小的图像 我正在尝试将所有这些文档插入 Couchbase 但在前 28k 个文档 总大小约为 185 Mb 后我不断收到此错误 Error Client Sid
  • npm 包上的“at”(@) 前缀是什么意思?

    In the Angular 组件路由器文档 https docs angularjs org guide component router我刚刚偶然发现了一个我以前从未见过的 npm 命令 我不明白发生了什么 npm install an
  • Delphi:如何使用 $OVERFLOWCHECKS OFF 禁用溢出检查?

    我有一些代码会导致下溢 var t1 t2 delta DWORD begin t1 0xffffff00 t2 0x00000037 delta t2 t1 减法本身does生成上溢 下溢 但我不希望 Delphi 抛出EIntOverf
  • 如何从 Slack 获取用户 ID 到机器人服务

    我正在使用 Azure LUIS 创建一个简单的机器人 这是我的第一个机器人 经过一些研究后 我取得了一些不错的进展 现在还与 Slack 集成作为测试它的渠道 机器人功能运行良好 但我希望识别用户的身份 这样我就可以个性化机器人对话 并从
  • Python - 在 Flask 中将查询结果从服务器返回到客户端

    我拥有的 我在 Flask 中有一个客户端 服务器 客户端将 JSON 格式的查询发送到服务器 服务器创建一个 JSON 文件 还有另一个工具可以接受此查询 在数据库上执行它并将结果写入 results txt 文件 服务器定期检查 结果
  • 如何在不隐藏控制框的情况下隐藏 WPF 功能区窗口(启用 Aero)中的标题栏?

    我目前使用 WPF Ribbon Window 并在当前窗口中启用 Aero 如下图所示 我喜欢隐藏标题 模式测试仪 因为没有足够的空间来显示它 但我还是需要原装windows控制盒以及当前标题 即使它会被隐藏 将显示在任务管理器和其他相关