我目前正在使用 C# 创建一个类库。该库将在 win32 应用程序 CATIA 中使用 VBA 引用。在 C# 解决方案中,我还有一个 WPF 项目。每当我在类库中调用 WPF UI 时,CATIA 的缩放和分辨率都会更改为监视器的 DPI。 winForms 不是这种情况,因为当我执行
Show()
或 ShowDialog()
时,CATIA 分辨率不会改变。
我尝试了一些方法,比如添加清单文件并将 dpiaware 更改为 false 并将 dpiAwareness 更改为 unaware。但它似乎并没有解决它。
我还注意到的另一件事是,如果我从 main 方法调用 WPF 项目中的任何方法,只要它没有
Show()
或 ShowDialog()
方法,分辨率保持不变。所以我知道这不是 WPF 项目的错,而是窗口的错。
我尝试添加清单文件并手动更改 DPI 设置,但它们似乎不起作用。