Я знаю, что это поздно, но для других людей вы можете использовать следующее. Возможно, это не будет строго отвечать на вопрос, поскольку это можно считать «отключением 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 function.
Это просто: просто переключитесь на [Windows 8] (http://blogs.msdn.com/b/b8/archive/2012/05/18/creating-the-windows-8-user-experience.aspx) и вся прозрачность исчезла. ;-) – dtb
@dtb Я знаю, это печально, но мне нужен реальный ответ, хотя :) – Tower
Pinvoke требуется: http://msdn.microsoft.com/en-us/library/windows/desktop/aa969524%28v=vs .85% 29.aspx –