从 MMC 管理单元显示时,窗体具有不同的样式

Form has different style when shown from MMC snap-in

我正在 MMC 管理单元中显示一个对话框。从结果窗格调用对话框时,它具有 Windows 主题。

但是,当从管理单元范围窗格上下文菜单调用对话框时,它具有不同的样式。

管理单元是用 C++ 编写的,对话框是 C# 窗体。 C++代码通过COM调用C#代码。

调用 Application.EnableVisualStyles() 为您的应用程序启用视觉样式。在应用程序中,通常在应用程序的 Main 方法中调用该方法。但在这种情况下,您可以在以下形式的构造函数中调用 Application.EnableVisualStyles()

public Form1()
{
    InitializeComponent();
    Application.EnableVisualStyles();
}

Application.EnableVisualStyles Method

This method enables visual styles for the application. Visual styles are the colors, fonts, and other visual elements that form an operating system theme. Controls will draw with visual styles if the control and the operating system support it. To have an effect, EnableVisualStyles() must be called before creating any controls in the application; typically, EnableVisualStyles() is the first line in the Main function.