2

奇妙な問題があります。Visual Studio (WinForm) で新しいフォームを作成すると、デザイナーでは常に位置 0,0 に表示されます。どういうわけか (方法はわかりません)、私のフォームはデザイナーの中央に配置されています (たとえば、左上隅が 120、150 の位置にあります)。0,0に戻す方法はありますか?ドラッグしようとしましたが、うまくいきません。前もって感謝します。フェルナンド

ここに画像の説明を入力

4

1 に答える 1

0

それを見つけた!私はフォームを継承し、次のように OnShown をオーバーライドしていました。

  private void gp_InicialN_Shown(object sender, EventArgs e)
  {
     Rectangle oRect = Screen.GetBounds(this);
     this.Top = (oRect.Height / 2) - (this.Height / 2);
     this.Left = (oRect.Width / 2) - (this.Width / 2);
  }

私がしていなかったのは、DesignMode 変数のチェックです。さて、一度変更すると正常に動作します。

  private void gp_InicialN_Shown(object sender, EventArgs e)
  {
     if (!DesignMode)
     {
        Rectangle oRect = Screen.GetBounds(this);
        this.Top = (oRect.Height / 2) - (this.Height / 2);
        this.Left = (oRect.Width / 2) - (this.Width / 2);
     }
  }
于 2012-06-01T10:22:22.730 に答える