仅在任务栏中显示的WPF窗口
我不确定我想做的是否合适,所以我会解释一下 我们有一个大型应用程序,需要一段时间才能加载。所以我们有一个启动屏幕。 启动屏幕导致远程桌面(终端服务器)上的加载时间过长。 因此,为了缓解这种情况,我们希望在加载RDP时隐藏启动屏幕。 但我们仍然需要至少向用户显示应用程序正在加载 因此,我想也许只是在任务栏(而不是系统托盘)中显示一些东西,因为一旦应用程序完全加载(并被主窗体的任务图标替换),它就会消失。 然而,我所看到的任何WPF解决方案都需要一个与任务栏状态匹配的可见窗体/窗口 有没有办法在任务栏上显示一些东西而不显示WPF窗口仅在任务栏中显示的WPF窗口,wpf,taskbar,splash-screen,Wpf,Taskbar,Splash Screen,我不确定我想做的是否合适,所以我会解释一下 我们有一个大型应用程序,需要一段时间才能加载。所以我们有一个启动屏幕。 启动屏幕导致远程桌面(终端服务器)上的加载时间过长。 因此,为了缓解这种情况,我们希望在加载RDP时隐藏启动屏幕。 但我们仍然需要至少向用户显示应用程序正在加载 因此,我想也许只是在任务栏(而不是系统托盘)中显示一些东西,因为一旦应用程序完全加载(并被主窗体的任务图标替换),它就会消失。 然而,我所看到的任何WPF解决方案都需要一个与任务栏状态匹配的可见窗体/窗口 有没有办法在任务
或者有没有其他方法可以在屏幕上显示应用程序加载状态而不显示任何内容?我确实认为您需要调查问题的根本原因。可能是线程和并行性 然而,一个简单的解决方案就是创建一个隐藏窗口。一个透明的,没有边界或任何东西的人。它甚至可以将赌注设置为0,0。这样,您就可以获得所需的任务栏项 我们也有同样的问题 在远程桌面上,我们执行了以下步骤
装载。请稍候。您正在使用
SplashScreen
类吗?你能解释一下装载时间过长的原因吗?这可能是因为你的闪屏上有动画吗?你看到这个了吗?加载时间过长似乎与应用程序(WinForms)的绘制问题有关。因为它有大量的控件,所以绘制时间更长。另外,因为它位于处理HWND的另一个框架之上。但我发现的性能问题是,当闪屏仍然可见时,应用程序的绘制时间超出了正常预期(>1分钟)。直到启动屏幕被隐藏,应用程序才缩减到仅需1~3秒即可绘制。我只能猜测两个窗口之间的RDP存在一些屏幕缓冲区问题。不,我没有意识到有SplsahScreen类。我们的飞溅屏幕没有动画。只是动态的(为加载状态更新文本),带有WPF效果和大PNG。除去这个影响并没有改善RDP的加载时间。好吧,我不能将两者都标记为答案,但是AngelWPF和Paul的回答都是相关的。在已有的Splash窗口中,现在有了另一个ShowSplash()方法。*删除了ShowInTaskbar=“False”*将大小设置为0,0*将子控件大小设置为0,0。*增加标题。*添加了一个图标。其他设置必须保留。我们已经研究了性能问题,但这与许多从较旧的应用程序转换而来的遗留代码有关,该应用程序现在位于一个框架上,以模拟大部分旧的基础。