为了账号安全,请及时绑定邮箱和手机立即绑定

WPF RibbonWindow 最小化、最大化/恢复和关闭按钮不可见

WPF RibbonWindow 最小化、最大化/恢复和关闭按钮不可见

C#
慕田峪7331174 2023-09-24 16:03:52
所以我整天用谷歌搜索试图找到答案,但没有找到答案。我已经找到了接近的东西,甚至可能找到了解决方案,只是没有意识到,但我似乎无法在我的 Windows 10 计算机上显示(可见)最小化、最大化/恢复和关闭按钮。除了我自己和另一位刚拿到新笔记本电脑的开发人员之外,没有人有这个问题。我尝试过改变我的 Windows 主题,并且我确实让它们在我打开一些高对比度设置时出现,但除此之外没有运气。尽管不可见,但它们仍然存在并且起作用,因为我可以单击该区域并查看窗口的最小、最大、恢复、关闭。我们使用 .Net 4.0 和带有自定义主题 (BureauBlue.xaml) 的 RibbonWindow。我想相信这可能与此有关,但不幸的是我对此一无所知,也不知道从哪里开始。<r:RibbonWindow x:Class="Ztools.Main" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"                 xmlns:props="clr-namespace:Ztools.Properties"                 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"                 IsTabStop="False" Icon="/Ztools;component/ztools32.ico" Height="830" Width="1200"                         WindowStartupLocation="CenterScreen" WindowState="Normal"                 Loaded="RibbonWindow_Loaded" Closing="RibbonWindow_Closing"                xmlns:my="clr-namespace:System;assembly=mscorlib" Title="Ztools 2.0" Name="mainRibbon"                   FontSize="14" SizeChanged="mainRibbon_SizeChanged"                                                       LocationChanged="mainRibbon_LocationChanged"                 StateChanged="mainRibbon_StateChanged" Deactivated="mainRibbon_Deactivated"                               KeyUp="mainRibbon_KeyUp" Background="{x:Null}">      <r:RibbonWindow.Resources>          <ResourceDictionary>              <ResourceDictionary.MergedDictionaries>                  <ResourceDictionary Source="/Ztools;component/themes/bureaublue.xaml"/>              </ResourceDictionary.MergedDictionaries>          </ResourceDictionary>      </r:RibbonWindow.Resources></r:RibbonWindow>我注意到但尚未通过拿出旧笔记本电脑来验证的另一件事是,我很确定漂亮的按钮在设计时也出现了,但看起来并不像这样。额外的问题/问题是,有时当我们的计算机进入睡眠/休眠状态时,从扩展坞到无扩展坞(不确定是哪一个或两个),主题栏也会像这样随机变黑。如果我能同时解决这个问题那就太好了。我确实将其更改为普通窗口,并且能够正确看到所有按钮,但我想我宁愿不走那条路并知道问题是什么并解决它。任何想法或建议都将不胜感激。编辑:所以我认为这与主题没有任何关系?我注释掉了与主题有关的所有内容,但它们仍然没有出现......不知道为什么我很久以前没有采取这个简单的步骤。
查看完整描述

3 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

因此,要再次发布此内容,这样任何有相同或类似问题的人至少可以选择解决他们的问题......因为由于某种原因,尽管包含有价值的信息作为问题的替代解决方案,但它已被删除。


按钮现在显示了,但不是 RibbonWindow 样式,所以它就是这样。


<Window x:Class="Ztools.Main" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 

                xmlns:props="clr-namespace:Ztools.Properties" 

                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

                xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary" 

                IsTabStop="False" Icon="/Ztools;component/ztools32.ico" Height="830" Width="1200" WindowStartupLocation="CenterScreen" WindowState="Normal" 

                Loaded="RibbonWindow_Loaded" Closing="RibbonWindow_Closing"

                xmlns:my="clr-namespace:System;assembly=mscorlib" Title="Ztools 2.0" Name="mainRibbon" FontSize="14" SizeChanged="mainRibbon_SizeChanged" LocationChanged="mainRibbon_LocationChanged" StateChanged="mainRibbon_StateChanged" Deactivated="mainRibbon_Deactivated" KeyUp="mainRibbon_KeyUp">


   <r:Ribbon Title="Ztools 2.0 (Scale Configuration Editor)" IsTabStop="False" Background="#FFE5E5E5" FontSize="12" FontFamily="Arial" Margin="0,-22,0,0">

   </r:Ribbon>

</Window>


查看完整回答
反对 回复 2023-09-24
?
绝地无双

TA贡献1946条经验 获得超4个赞

版本 5 中的 RibbonWindow 默认设置为 WindowStyle="none"。
也许WindowStyle只是设置为 None?
尝试将其设置为“SingleBorderWindow”,其在基类中的原始默认值。

查看完整回答
反对 回复 2023-09-24
?
波斯汪

TA贡献1811条经验 获得超4个赞

我不仅遇到了同样的问题,而且能够在新项目中复制它并通过此解决方案修复它,尽管对您来说,它需要迁移到更新的 .net 版本。

问题似乎源于使用 RibbonControlsLibrary。它是功能区控件的过时版本。从 .net 4.5 开始,功能区是框架本机的,通过删除引用,您将能够使用包含的 RibbonWindow。

迁移到 .net 版本 4.5+ 并删除此引用

xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"

并使用

<RibbonWindow>

代替

<r:RibbonWindow>


查看完整回答
反对 回复 2023-09-24
  • 3 回答
  • 0 关注
  • 228 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信