Etiqueta multilínea en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Crear una etiqueta multilínea con la propiedad Label.AutoSize en C#
  2. Cree una etiqueta multilínea con el método Panel en C#
Etiqueta multilínea en C#

Este tutorial presentará los métodos para crear una etiqueta multilínea en C#.

Crear una etiqueta multilínea con la propiedad Label.AutoSize en C#

La propiedad Label.AutoSize especifica si la etiqueta puede ajustar automáticamente su tamaño para adaptarse al texto que se muestra en C#. La propiedad Label.AutoSize tiene un valor booleano y debe establecerse en true si queremos que nuestra etiqueta cambie de tamaño automáticamente para ajustarse al texto que se muestra y en false si queremos no queremos que nuestra etiqueta cambie de tamaño automáticamente. para adaptarse al texto que se muestra. Luego podemos establecer el tamaño máximo de la etiqueta con la propiedad Control.MaximumSize en C#. El siguiente ejemplo de código nos muestra cómo crear una etiqueta multilínea con la propiedad Label.AutoSize en C#.

using System;
using System.Drawing;
using System.Windows.Forms;

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

    private void Form1_Load(object sender, EventArgs e) {
      string data = "This is some data that we want to display";
      label1.Text = data;
      label1.AutoSize = true;
      label1.MaximumSize = new Size(50, 0);
    }
  }
}

Producción:

Etiqueta multilínea de C# 1

En el código anterior, creamos una etiqueta multilínea con las propiedades Label.AutoSize y Control.MaximumSize en C#.

Cree una etiqueta multilínea con el método Panel en C#

También podemos usar un control Panel para crear una etiqueta multilínea en C#. Podemos colocar la etiqueta deseada dentro de un panel y luego manejar el evento ClientSizeChanged para el panel. El evento ClientSizeChanged se invoca siempre que cambia el tamaño de un control dentro del panel. Podemos cambiar el tamaño de la etiqueta con la propiedad Label.MaximumSize en C#. El siguiente ejemplo de código nos muestra cómo crear una etiqueta multilínea con el método Panel en C#.

using System;
using System.Drawing;
using System.Windows.Forms;

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

    private void Form1_Load(object sender, EventArgs e) {
      string data = "This is some data that we want to display";
      label1.Text = data;
      label1.AutoSize = true;
    }

    private void panel1_ClientSizeChanged(object senderObject, EventArgs eventArguments) {
      label1.MaximumSize =
          new Size((senderObject as Control).ClientSize.Width - label1.Left, 10000);
    }
  }
}

Producción:

Etiqueta de línea múltiple de C# 2

Creamos una etiqueta multilínea en el código anterior colocando la etiqueta dentro de un panel y manejando el evento ClientSizeChanged dentro del panel en C#. Primero especificamos la propiedad Label.AutoSize en true y especificamos el tamaño máximo de la etiqueta dentro del evento ClientSizeChanged en el panel.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Csharp GUI