C# - 将'System.Drawing.Size'元素转换为整数

时间:2013-10-19 14:07:00

标签: c# .net winforms position size

我正在使用Visual C#中的.NET表单。 我动态创建了一个标签,点击按钮即可显示。这一切都很好;我要做的就是定位它,使元素位于表单的中心。通常情况下,我只是将它设置为表单大小的一半,减去元素大小的一半,但当然这不会起作用,因为我也是以编程方式设置文本。

我的标签代码如下:

if(part == 1){
        theLabel.Text = "Choose a name for your character!";
}
theLabel.ForeColor = Color.DarkGray;
theLabel.Font = new Font("Arial", 14, FontStyle.Bold);

theLabel.Location = new Point();

我在这里尝试了很多东西,但我想不出办法。我已经尝试了int[] sizes = (int)theLabel.Size和其他各种其他但我无法让它工作。还有另一种方法可以将这个元素排在中间吗?

1 个答案:

答案 0 :(得分:0)

如果我是你,我会这样做。

Label theLabel;

private void button1_Click(object sender, EventArgs e)
        {
            theLabel = new Label();
            theLabel.AutoSize = true;
            theLabel.BackColor = Color.Red;
            theLabel.TextAlign = ContentAlignment.MiddleCenter;
            theLabel.Text = "Choose a name for your character!";
            this.Controls.Add(this.theLabel);
            theLabel.Left = (this.ClientRectangle.Width - theLabel.Width) / 2;
            //theLabel.ForeColor = Color.Black;
            theLabel.Top = 25;
            theLabel.Show();
        }