我有一個非常簡單的類,它從System.Windows.Forms.Form繼承並刪除WS_CAPTION窗口樣式。它完美地運行在Windows XP中。在Windows 10中,一段標題欄仍然被繪製,並且在使用自定義標題欄控件時,它看起來很難看。從Windows窗體(Windows 10樣式)中刪除標題欄
我知道有可能有幾種方法來完成這種外觀,但我選擇這個有多種原因。我對其他方法不感興趣 - 這裏不是我的問題的意圖。
我的問題是什麼造成了這種不同之間的這種差異,在Windows 10中呈現與Windows 7?區別不僅在於風格。看起來,即使WS_CAPTION標誌已被刪除,標題欄仍以某種身份呈現。
class BorderlessForm : System.Windows.Forms.Form
{
protected override System.Windows.Forms.CreateParams CreateParams
{
get
{
var _CreateParams = base.CreateParams;
_CreateParams.Style &= ~0x00C00000; // remove WS_CAPTION
return _CreateParams;
}
}
}
視窗7的屏幕截圖(期望的外觀和MSDN描述一致):
視窗10的屏幕截圖(不期望的外觀不一致MSDN說明):
您正在使用winforms,這是一種過時的表示技術,不可能在以後的Windows版本中以可預測的方式工作。使用WPF。 –
向我展示winforms的MSDN文檔被棄用,並將其標記爲答案... –
我沒有說它被棄用。我剛纔說這已經過時了。這是遺產。 –