簡體   English   中英

在Citrix中運行時,如何防止WPF + win32應用程序任務欄圖標更改為Citrix默認圖標?

[英]How to prevent WPF+win32 app taskbar icon from changing to Citrix default icon when run in Citrix?

我有一個帶有許多本機代碼和Win32 Windows的WPF應用程序。 程序的應用程序圖標在VS2015項目中定義為.. \\ gui \\ rc \\ MyApp.ico。 在XenApp Citrix中啟動程序時:

  1. 出現飛濺
  2. WPF登錄窗口出現在任務欄中,帶有正確的應用程序圖標
  3. 登錄后,再次出現閃屏,任務欄圖標消失
  4. 接下來,出現帶有任務欄圖標的win32窗口。
  5. 加載大量數據時,任務欄圖標為Citrix-icon,但准備就緒后,正確的應用程序圖標會切換回
  6. 關閉win32對話框后,主窗口出現,任務欄中顯示Citrix-icon。

可以跳過mainwindow之前的win32對話框(步驟4-5),並在啟動后通過Citrix任務欄圖標打開主窗口。 上面的步驟僅是因為在對話框加載時,任務欄圖標是Citrix。

MyApp.ico是160x160像素,具有32位深度。

在初始化期間創建mainwindow時,其ShowInTaskbar設置為false。 准備就緒時將其設置為true。 這樣做是因為我們想在mainwindow之前顯示其他窗口,所以未完成的mainwindow在屏幕之外,並且我們不希望從任務欄訪問它。

編輯:如果ShowInTaskbar未設置為false,則不會發生。

實際上,不是解決此問題的通用解決方案,但似乎我提出的簡單方法可以用OP的代碼解決此特定問題。

ShownInTaskbar將主窗體的Visibility屬性初始設置為Visibility.Hidden值,而ShownInTaskbar設置ShownInTaskbar屬性。

一旦窗口准備就緒,就可以將Visibility屬性設置為Visibility.Visible值,從而顯示窗口及其任務欄按鈕(帶有正確的圖標)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM