c# - 为什么 MonthCalendar 在 3rd 方应用程序中看起来不同?

标签 c# monthcalendar

我目前正在为第 3 方应用程序开发插件 dll。我的部分 dll 包含一个弹出窗口,其中包含 System.Windows.Forms.MonthCalendar。现在,当我在 Visual Studio 中处理它时,当我用我编写的测试应用程序打开弹出窗口时,它看起来是一种方式,但当第 3 方应用程序打开它时,它看起来不同。除了看起来不同之外,他们还有不同的行为。有谁知道为什么?我认为可能有问题的一件事是我的 dll 是用 .Net 3.5 构建的,而第 3 方应用程序是 .Net 2.0(我认为)。但是,当我将测试应用程序构建为 .Net 2.0 时,它仍然以相同的方式工作。

这是我期待的:

alt text

这就是我得到的:

alt text

最佳答案

第 3 方应用程序未启用视觉样式,因此退回到经典的 Windows UI 主题。请注意,按钮和组合框看起来也不一样。您必须在第 3 方应用程序中启用视觉样式才能将当前的 Windows 主题应用于它。

(作为练习,尝试将您的 Windows 首选项切换为使用经典主题,然后查看正在运行的测试应用程序——它应该看起来与第 3 方应用程序相同。)

关于c# - 为什么 MonthCalendar 在 3rd 方应用程序中看起来不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4738676/

相关文章:

c# - 用逗号 MVC 5 格式化十进制值

MySQL 获取一个日历年的月度注册用户总数

c# - 更改月历大小

c# - C# 中的 Redim 保留?

c# - 奇怪的 StackOverflow 异常

C# MonthCalendar控件获取光标下的日期

python - 从原始字符串中提取月份名称?

c# - Visual Studio 2017 Enterprise 不会停止在生成时运行所有测试

c# - 将 UIImage 转换为字节数组