📜  如何在C#中设置标签中文本的对齐方式?

📅  最后修改于: 2021-05-29 18:04:21             🧑  作者: Mango

在Windows窗体中,标签控件用于在窗体上显示文本,并且不参与用户输入或鼠标或键盘事件。您可以使用Windows窗体中的TextAlign属性设置Label控件中存在的文本的对齐方式。您可以使用两种不同的方法来设置此属性:

1.设计时:使用以下步骤设置Label控件的TextAlign属性是最简单的方法:

  • 第1步:创建一个Windows窗体,如下图所示:
    Visual Studio->文件->新建->项目-> WindowsFormApp
  • 步骤2:从“工具箱”中拖动“标签”控件,并将其放在Windows窗体上。您可以根据需要将Label控件放置在Windows窗体上的任何位置。
  • 步骤3:拖放之后,您将转到Label控件的属性以设置Label的TextAlign属性。

    输出:

2.运行时:比上述方法有些棘手。在此方法中,可以借助给定的语法以编程方式在Label控件中设置文本的对齐方式:

public virtual System.Drawing.ContentAlignment TextAlign { get; set; }

在这里,ContentAlignment指定文本的对齐方式。它会抛出一个InvalidEnumArgumentException如果分配给该属性的值不属于的ContentAlignment值。以下步骤用于设置Label的TextAlign属性:

  • 步骤1:使用Label类提供的Label()构造函数创建标签。
    // Creating label using Label class
    Label mylab = new Label();
    
  • 步骤2:创建Label后,设置Label类提供的Label的TextAlign属性。
    // Set TextAlign property of the label
    mylab.TextAlign = ContentAlignment.MiddleCenter;
    
  • 步骤3:最后使用Add()方法将此Label控件添加到窗体中。
    // Add this label to the form
    this.Controls.Add(mylab);
    

    例子:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
      
    namespace WindowsFormsApp16 {
      
    public partial class Form1 : Form {
      
        public Form1()
        {
            InitializeComponent();
        }
      
        private void Form1_Load(object sender, EventArgs e)
        {
            // Creating and setting the label
            Label mylab = new Label();
            mylab.Text = "GeeksforGeeks";
            mylab.Location = new Point(222, 90);
            mylab.AutoSize = true;
            mylab.Font = new Font("Calibri", 18);
            mylab.BorderStyle = BorderStyle.Fixed3D;
            mylab.ForeColor = Color.Green;
            mylab.Padding = new Padding(6);
            mylab.TextAlign = ContentAlignment.MiddleCenter;
      
            // Adding this control to the form
            this.Controls.Add(mylab);
      
            // Creating and setting the label
            Label mylab1 = new Label();
            mylab1.Text = "Welcome To GeeksforGeeks";
            mylab1.Location = new Point(155, 170);
            mylab1.AutoSize = true;
            mylab1.BorderStyle = BorderStyle.Fixed3D;
            mylab1.Font = new Font("Calibri", 18);
            mylab1.Padding = new Padding(6);
            mylab.TextAlign = ContentAlignment.MiddleCenter;
      
            // Adding this control to the form
            this.Controls.Add(mylab1);
        }
    }
    }
    

    输出: