我有一个WPF应用程序有很多本地代码和win32窗口。程序的应用程序图标在VS2015项目中定义为.. \ gui \ rc \ MyApp.ico。当我的XenApp思杰启动程序:如何防止在Citrix中运行时将WPF + win32应用程序任务栏图标更改为Citrix默认图标?
- 出现飞溅 在任务栏上正确的应用程序图标出现
- WPF登录窗口
- 登录后再次出现飞溅和任务栏图标消失
- 接下来会出现一个Win32窗口与任务栏图标。
- 加载大量数据时,任务栏图标为Citrix图标,但准备好后会切换回正确的应用程序图标
- 关闭win32对话框后,主窗口随Citrix-图标显示在任务栏中。
在mainwindow之前的win32对话框(步骤4-5)可以被跳过,导致主窗口在用思杰任务栏图标启动后打开。上面的步骤仅仅是因为在加载对话框时任务栏图标是Citrix。
MyApp.ico是具有32位深度的160x160像素。
在初始化期间创建主窗口时,其ShowInTaskbar设置为false。当它准备好时,它被设置为true。这样做是因为我们想在主窗口之前显示其他窗口,所以未完成的主窗口位于屏幕之外,我们不希望它可以从任务栏访问。
编辑:如果ShowInTaskbar没有设置为false,则不会发生这种情况。
为什么你不能只设置'可见性=“隐藏”'? – dymanoid
@dymanoid:对于主窗口?要么我是个白痴,要么是因为某种原因不起作用。我今天晚上尝试,我报告。谢谢,肯定是一个合法的问题。 –
@dymanoid:它的工作原理。我只需要将它设置一次以上并涉及一点闪烁。我认为我太愚蠢了(当我第一次尝试时)将它设置为隐藏在多个事件处理程序中。谢谢。它解决了我的问题,所以我想你可以写一个简短的答案。 –