osx mono winforms总是位于顶部

时间:2015-01-27 21:31:29

标签: c# winforms macos mono

我使用VS 2013 Windows Forms(.NET3.5)在c#中创建了一个应用程序,在Ubuntu上进行了正面测试 - 没有问题(使用单声道)。

现在可以在安装了单声道的MacOS Maverick 10.9上进行测试。

无论如何,我的表单都会保持在最顶层,甚至MessageBox.Show(this,"blah");也会被表单覆盖。

到目前为止我尝试了什么: 在设计器视图中设置TopMost。 已将this.TopMost = false;添加到公开Form1(){}

任何想法我怎么能解决这个问题?

我的表单没有边框,控件盒。而不是这个我使用图像作为背景。

1 个答案:

答案 0 :(得分:1)

好的,我有一个小功能,可以检测它的Mac是否然后更改FormBorderStyle

 if (OSDetection.os == "MAC")  // Mac fix for always on top
            {
                this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
            }

似乎我无法将边框设置为无,因为我的表单将始终显示在其他窗口之上。