为什么 AxWindows 媒体播放器会影响 Visual Studio 中的全屏生成?

问题描述

我在 Visual Studio 上的钢琴应用程序中使用了许多 AxWindows 媒体播放器 (AxWMPLib) 来播放声音。我没有将它们用于视频,因此它们都是不可见的。我还想以全屏模式播放我的应用程序。全屏模式在没有媒体播放器的情况下工作正常,所有锚点都可以正常工作。 This is the full screen without the Media Players and it is all good

但是,一旦我添加一个媒体播放器,it then looks like this? 锚点中断,全屏模式完全改变?我不知道为什么会发生这种情况,我真的很困惑为什么添加 AxWMPLib 会破坏这样的锚点,而根本不改变 AxWMPLib。

有谁知道为什么会这样以及如何解决它? 提前致谢:D

解决方法

我找到了这个问题的答案!我希望我下面的解决方案能在未来对任何人有所帮助。如果您使用 AxWMPLib 并希望表单全屏显示,则所有元素可能无法正确锚定,并停留在屏幕的左上角(如问题中的屏幕截图)。

我发现这是由布局部分中的 WindowState 属性引起的。不要将 WindowState 属性设置为 Maximised,而是将其保持为 Normal,然后在 Form_Load 子中以编程方式更改 WindowState 属性,使用以下代码:

Me.WindowState = FormWindowState.Maximised

然后希望当您运行该表单时,该表单仍将是全屏的,但 AxWMPLib 不会导致它出错,并且所有内容都应该正确锚定。