我一直認爲使用像iTunes或Visual Studio 2012這樣的程序的窗體邊框沒有邊框樣式和按鈕,因爲關閉按鈕被繪製爲圖像。自己的窗體邊框樣式
然而,一旦我的Visual Studio沒有響應,邊境變更爲基本的Windows邊框。
我怎樣才能得到自己的形式邊界?在C#中可能嗎?
我一直認爲使用像iTunes或Visual Studio 2012這樣的程序的窗體邊框沒有邊框樣式和按鈕,因爲關閉按鈕被繪製爲圖像。自己的窗體邊框樣式
然而,一旦我的Visual Studio沒有響應,邊境變更爲基本的Windows邊框。
我怎樣才能得到自己的形式邊界?在C#中可能嗎?
您正在看到「窗口窗口」,這是Windows窗口管理器創建的用於替換死鎖窗口的窗口。您會在標題欄中看到「Not Responding」。那個窗口當然不會有相同的自定義樣式,Windows不知道如何正確地做到這一點。
您可以使用Spy ++實用程序來查看其他應用程序的窗口屬性。實際上VS2012使用標題欄的常規窗口樣式。他們如何定製它是一個保存完好的祕密,我懷疑他們攔截WM_NCPAINT,這是一個相當困難的信息來實現自己。使用無邊界窗口肯定更容易。
繼@Hans'後:
使用WPF可以設置windowstyle爲none這樣的:
<Window WindowStyle="None">
然後你就可以實現自己的按鈕。
:嘗試兩個鏈接:http://www.codeproject.com/Articles/18351/A-Form-with-Customized-Caption-Bar-and-Flexible-Bo和http://customerborderform.codeplex.com / – KF2