我有一個不包含標題欄的Windows窗體應用程序,並且在Windows 7上,任務欄顯示來自AssemblyTitle的值,而不是表單的文本中的值屬性。我如何動態改變這個值?C# - Windows 7任務欄顯示AssemblyTitle而不是Form.Text
謝謝!
我有一個不包含標題欄的Windows窗體應用程序,並且在Windows 7上,任務欄顯示來自AssemblyTitle的值,而不是表單的文本中的值屬性。我如何動態改變這個值?C# - Windows 7任務欄顯示AssemblyTitle而不是Form.Text
謝謝!
從你的意見中,我認爲你指的是該程序的「跳轉列表」,其中包括一個程序標題(如果你點擊它,該程序的另一個實例啓動)。我的理解是,您看到的是所有應用程序的默認行爲,無論您的表單上的標題欄的可見性如何。
我試圖改變這一個程序我寫,來到這(至少在託管代碼),它不能做的結論 - Win 7的花費中的可執行FileDescription的值(AssemblyTitle是一個代理這在Win Forms應用程序中)並使用它。據我所知,程序集屬性不能改變正在運行的程序集,而且我不確定Windows是否會發現更改並更新跳轉列表,即使您可以這樣做。
有一個Win 7 API的管理包裝器(Windows API Code Pack),雖然有一個用於操作跳轉列表的類,但我沒有發現任何內容來覆蓋它們的這個特定方面的默認行爲。
編輯: 更仔細地進入本地API(而不是託管代碼包的包裝),我找不到任何功能,但我沒有發現這個MSDN blog entry。只在第二個圖(其定義了應用程序的標題爲「任務欄任務」部分的一部分)和Windows SDK報價下,存在的活動的開發人員可以執行列表,它包括以下內容:
作爲開發人員我們無法控制任務欄任務 。
因此,看起來這是不可能的 - 跳轉列表的這一部分由操作系統獨佔控制。
謝謝你報告你找到的東西。這是令人失望的消息......我希望不必使用windows api代碼包,聽起來好像不一定會有幫助。 – g01d 2010-09-17 16:48:48
沒有repro。將窗體的ControlBox屬性設置爲false並將文本設置爲「」。 – 2010-09-16 16:02:08
ControlBox屬性爲false,文本不能爲空。問題在於Windows 7使用AssemblyTitle屬性,而不是主窗體的Text屬性。我需要能夠更改任務欄中的文本以使用動態值,而不是*來自AssemblyTitle的值。 – g01d 2010-09-16 16:05:36
我想你的意思是當你右鍵點擊任務欄時應用程序的名稱? – tia 2010-09-16 17:40:41