[英]Disabling Aero glass/transparency for WPF window?
我可以以某種方式禁用WPF應用程序窗口的玻璃/透明膠片嗎?
注意:我不想禁用Aero,僅禁用玻璃/透明膠片,而不是整個窗口,而不是我的窗口。
諸如此類(“ Enable Transparency
復選框),但僅適用於我的應用程序:
這可能嗎?
我知道這已經晚了,但是對於其他人,您可以使用以下方法。 它可能不會嚴格回答這個問題,因為這可能被視為“禁用Aero”,但是它確實僅對客戶端窗口禁用了透明性。
[DllImport("DwmApi.dll")]
public static extern int DwmSetWindowAttribute(IntPtr hwnd, int dwAttribute, ref int pvAttribute, int cbAttribute);
private const int DWMWA_NCRENDERING_POLICY = 2;
private const int DWMNCRP_DISABLED = 1;
private void OnLoaded(object sender, RoutedEventArgs e)
{
var mainWindowHandle = new WindowInteropHelper(this).Handle;
var policyParameter = DWMNCRP_DISABLED;
DwmSetWindowAttribute(mainWindowHandle, DWMWA_NCRENDERING_POLICY, ref policyParameter, sizeof(int));
}
您可以在此處找到更多信息DwmSetWindowAttribute函數 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.