WPF 开发遇到的问题

1 应用被最小化点击任务栏图标无法展开(最大化)显示应用

1.1 问题原因:主窗体 ResizeMode="CanMinimize",子窗体  ResizeMode="NoResize"。当主窗体和子窗体一起显示的之后。应用被最小化,点击任务栏上的图标无法展开(最大化)显示应用

解决方案:将子窗体  ResizeMode="NoResize" 修改为 ResizeMode="CanMinimize" ,却不能以管理员运行

1.2 以管理员身份运行,
1.2.1  全屏主窗体 WindowState="Maximized" WindowStyle="None"  ResizeMode="CanMinimize" 子窗体同时显示 。点击侧边栏 主页 。最小化之后 就无法在任务栏打开,使用Win+M 可以,但是不能再调用User32设置窗体最小化显示

1.2.2  win + m 无法将显示模态最小化

1.2.3  全屏主窗体 WindowState="Maximized" WindowStyle="None"  ResizeMode="CanMinimize"  同时显示,使用Win+M  。先最小化,再点击侧边栏 主页 ,最小化之后可以在任务栏打开,但是子窗体是在左下角最小化,需要监听主窗体的VisibilityChange 事件来还原子窗体

 

2  

    使用AllowsTransparency = true ,可避免程序启动白板或黑屏。但使用之后性能不好。故采用 WindowChrome.WindowChrome 代替。

<!--修复调用AllowsTransparency的异常,优先使用WindowChrome,解决点开应用程序出现白屏或黑屏的问题-->

    <WindowChrome.WindowChrome>

        <WindowChrome GlassFrameThickness="-1" CaptionHeight="0" UseAeroCaptionButtons="False"  CornerRadius="0" NonClientFrameEdges="None"  ResizeBorderThickness="0"/>

</WindowChrome.WindowChrome>

但需要注意的是,使用WindowChrome.WindowChrome时, ResizeMode 不能设置为CanResize ,否则 启动会白屏以及使窗体向外扩,可以使用CanMinimize避免上面两个问题。

 

posted on   TanZhiWei  阅读(314)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示