Etichetta multilinea in C#

Muhammad Maisam Abbas 16 febbraio 2024
  1. Creare un’etichetta multilinea con la proprietà Label.AutoSize in C#
  2. Crea un’etichetta multilinea con il metodo Panel in C#
Etichetta multilinea in C#

Questo tutorial introdurrà i metodi per creare un’etichetta multilinea in C#.

Creare un’etichetta multilinea con la proprietà Label.AutoSize in C#

La proprietà Label.AutoSize specifica se l’etichetta può regolare automaticamente le sue dimensioni per adattarle al testo visualizzato in C#. La proprietà Label.AutoSize ha un valore booleano e deve essere impostata a true se vogliamo che la nostra etichetta si ridimensiona automaticamente per adattarsi al testo visualizzato e false se non vogliamo che la nostra etichetta si ridimensiona automaticamente per adattare il testo visualizzato. Possiamo quindi impostare la dimensione massima dell’etichetta con la proprietà Control.MaximumSize in C#. Il seguente esempio di codice ci mostra come creare un’etichetta multilinea con la proprietà Label.AutoSize in 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);
    }
  }
}

Produzione:

Etichetta multilinea C# 1

Nel codice sopra, abbiamo creato un’etichetta multilinea con le proprietà Label.AutoSize e Control.MaximumSize in C#.

Crea un’etichetta multilinea con il metodo Panel in C#

Possiamo anche usare un controllo Panel per creare un’etichetta multilinea in C#. Possiamo posizionare l’etichetta desiderata all’interno di un pannello e quindi gestire l’evento ClientSizeChanged per il pannello. L’evento ClientSizeChanged viene richiamato ogni volta che cambia la dimensione di un controllo all’interno del pannello. Possiamo ridimensionare l’etichetta con la proprietà Label.MaximumSize in C#. Il seguente esempio di codice ci mostra come creare un’etichetta multilinea con il metodo Panel in 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);
    }
  }
}

Produzione:

Etichetta multilinea C# 2

Abbiamo creato un’etichetta su più righe nel codice sopra inserendo l’etichetta all’interno di un pannello e gestendo l’evento ClientSizeChanged all’interno del pannello in C#. Abbiamo prima specificato la proprietà Label.AutoSize su true e specificato la dimensione massima dell’etichetta all’interno dell’evento ClientSizeChanged nel pannello.

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

Articolo correlato - Csharp GUI