0

我有与本文中描述的完全相同的问题:

http://social.msdn.microsoft.com/Forums/en/winforms/thread/bb67bf2d-4f6b-49a1-a107-18b11520bf8e

谁能提供一些想法?非常感谢!

从上面的链接复制:

如果我使用 将表单显示为模态ShowDialog,它会显示在我的主监视器上,并且在那里表现良好(最大化、最小化等)。

如果我在第二台或第三台显示器上移动表单,然后将其最大化,则上面的整个栏停止工作:从左侧(系统菜单)到右侧(恢复或最小化或关闭),包括中间(双击栏不恢复)。

在某些情况下,当我越过表单栏时,鼠标光标会变为“大小”。并且左键单击和移动确实会调整表单的大小!

4

2 回答 2

0

在我将Form.FormBorderStyle属性更改为FixedSingleorFixed3D或之前,我在左侧的第二个屏幕上遇到了同样的问题FixedDialogForm_SizeChanged可以像这样在事件处理程序中更改此属性:

Private Sub Form1_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged
        If Me.WindowState = FormWindowState.Maximized Then
            Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Fixed3D
else
            Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable
End if
于 2014-01-25T12:46:23.937 回答
0

正如他们在上面链接中的 msdn 站点上观察到的那样,如果您的第二台显示器配置在主显示器的左侧,但不会在右侧配置时,就会发生这种情况。

这发生在 VS2010 和 VS2012 中,包括 C# 和 VB.NET。

1) 创建一个 Windows 窗体应用程序

2)在表单中添加一个按钮

3)对于按钮代码的按钮单击处理程序:

    私人无效按钮1_Click(对象发送者,EventArgs e)
    {
        表格 f = 新表格();
        f.ShowDialog();
    }

4) 运行应用程序,单击按钮。将第二个窗体拖到另一个监视器上,然后最大化。

5) 所有标题栏按钮:最小化、恢复/最大化、关闭现在都被禁用,但您可以通过右键单击上下文菜单恢复。在主显示器上最大化不会这样做。

于 2013-10-13T20:22:08.257 回答