Etiqueta Multiline em C#

Muhammad Maisam Abbas 16 fevereiro 2024
  1. Criar uma Etiqueta Multilinha com a propriedade Label.AutoSize em C#
  2. Crie uma etiqueta multilinha com o método Panel em C#
Etiqueta Multiline em C#

Este tutorial irá apresentar os métodos para criar uma etiqueta multilinha em C#.

Criar uma Etiqueta Multilinha com a propriedade Label.AutoSize em C#

A propriedade Label.AutoSize especifica se o rótulo pode ajustar automaticamente seu tamanho para caber no texto que está sendo exibido em C#. A propriedade Label.AutoSize tem um valor booleano e deve ser definida como true se quisermos que nosso rótulo se redimensione automaticamente para se ajustar ao texto que está sendo exibido e false se não quisermos que nosso rótulo se redimensione automaticamente para caber no texto que está sendo exibido. Podemos então definir o tamanho máximo do rótulo com a propriedade Control.MaximumSize em C#. O exemplo de código a seguir nos mostra como criar um rótulo multilinha com a propriedade Label.AutoSize em 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);
    }
  }
}

Resultado:

Rótulo multilinha C# 1

No código acima, criámos uma etiqueta multilinha com as propriedades Label.AutoSize e Control.MaximumSize em C#.

Crie uma etiqueta multilinha com o método Panel em C#

Também podemos usar um controle Panel para criar um rótulo multilinha em C#. Podemos colocar a etiqueta desejada dentro de um painel e então manipular o evento ClientSizeChanged para o painel. O evento ClientSizeChanged é invocado sempre que o tamanho de um controle dentro do painel muda. Podemos redimensionar o rótulo com a propriedade Label.MaximumSize em C#. O exemplo de código a seguir nos mostra como criar um rótulo multilinha com o método Panel em 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);
    }
  }
}

Resultado:

Etiqueta multilinha em C# 2

Criámos uma etiqueta com várias linhas no código acima, colocando a etiqueta dentro de um painel e manipulando o evento ClientSizeChanged dentro do painel em C#. Primeiro especificamos a propriedade Label.AutoSize como true e especificamos o tamanho máximo da etiqueta dentro do evento ClientSizeChanged no painel.

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

Artigo relacionado - Csharp GUI