Windows窗体 - 手动窗体定位

时间:2013-07-08 16:15:25

标签: c# winforms visual-studio

我在visual studio 2012上有以下代码,我还将属性更改为手动定位。

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
           InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
           this.Location = new Point(100, 100);
        }
   }
}

应该将我的窗口的左上角定位在(100,100)坐标上。

我在网上得到了这个例子,他们使用的是Visual Studio 2010.在Visual Studio 2012中我是否需要做些什么来实现相同的结果呢?

2 个答案:

答案 0 :(得分:3)

通常情况下,最好在Form的设计器中进行设置。

StartPosition设置为FormStartPosition.Manual,并根据需要设置Location。这将导致表单在正确的位置创建,您的代码(一旦正常工作)将实际在其Load事件处理程序中移动表单。

  

我在他们使用visual studio 2010的网上得到了这个例子,是否有必要为我在visual studio 2012中实现相同结果?

在VS 2010和2012中,此代码实际上应该正常运行(Windows窗体代码在所有版本的.NET Framework中的工作方式相同)。确保Form1_Load实际设置为Form.Load事件处理程序。如果在设计器中没有这样做,您可以手动将其添加到构造函数中:

    public Form1()
    {
       InitializeComponent();
       this.Load += Form1_Load; // Needs to be setup in designer or here...
    }

答案 1 :(得分:0)

之前我没有看到此行I have also changed the properties to manual positioning,如果是这样,除非Form1_Load未在您的表单Load事件中注册,否则您的代码无法正常工作。

相关问题