【问题标题】:How is it possible to centre a form in C#如何在 C# 中将表单居中
【发布时间】:2011-06-16 19:30:30
【问题描述】:

如何在 C# 中使表单居中,使其显示在屏幕中间

【问题讨论】:

  • 什么样的应用程序?基于 Web、基于 WPF 等

标签: c# .net windows winforms


【解决方案1】:

如果您在谈论它从哪里开始,请使用Form.StartPosition

form.StartPosition = FormStartPosition.CenterScreen;

如果您想在任意时间执行此操作,则需要计算出屏幕大小、表单大小,并在相应地设置Location 属性之前自行计算。

【讨论】:

    【解决方案2】:

    使用窗体的 StartPosition 属性,将其更改为 CenterScreen。

    【讨论】:

      【解决方案3】:

      在 Winforms 中,有一个名为 StartPosition 的 Form 控件的属性;它是一个枚举,其中包括位置“CenterScreen”。使用它,您的窗口将在第一次创建时出现在鼠标当前所在的监视器的中间。

      【讨论】:

        【解决方案4】:

        您可以在设计器中设置StartPosition属性

        【讨论】:

          【解决方案5】:

          单击您的表单并按F4 以显示“属性”选项卡,然后向下滚动到StartPosition 属性并将值更改为CenterScreen

          【讨论】:

            【解决方案6】:

            如果您希望它在启动时居中,请将表单的 StartPosition (http://msdn.microsoft.com/en-us/library/system.windows.forms.form.startposition.aspx) 设置为 CenterScreen。

            如果您希望它在其他时间居中,您必须使用 SystemInformation.WorkingArea 类 (http://msdn.microsoft.com/en-us/library/system.windows.forms.systeminformation.workingarea.aspx) 并像这样对其执行算术:

            X = (屏幕宽度 - 表单宽度) / 2

            Y = (屏幕高度 - 表格高度) / 2

            然后考虑如果您的表单太大会发生什么。将其中一个或两个坐标都设置为负数是不好的形式,所以不要忘记这种情况。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2018-11-21
              • 2019-05-28
              • 1970-01-01
              • 1970-01-01
              • 2022-12-05
              • 2015-12-03
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多