¿Cómo mantengo una etiqueta centrada en WinForms?

En WinForms , estoy usando una Label para mostrar diferentes mensajes como el éxito, el fracaso, etc.

Me gustaría centrar esa etiqueta en la forma central. Quiero una solución que la mantenga centrada ya sea que haya solo una palabra o una oración completa en la etiqueta.

Establezca la propiedad AutoSize Label en False , la propiedad TextAlign en MiddleCenter y la propiedad Dock en Fill .

Lo conseguirás con la propiedad de configuración Ancla: Ninguna.

Un poco de contenido adicional de menor importancia para la configuración mediante progtwigción:

 Label textLabel = new Label() { AutoSize = false, TextAlign = ContentAlignment.MiddleCenter, Dock = DockStyle.None, Left = 10, Width = myDialog.Width - 10 }; 

La alineación de Dockstyle y contenido puede diferir de sus necesidades. Por ejemplo, para una etiqueta simple en un formulario wpf uso DockStyle.None.

Si no desea acoplar tags en toda el área disponible, simplemente configure el evento SizeChanged en lugar de TextChanged. El cambio de cada letra cambiará la propiedad de ancho de la etiqueta, así como su texto cuando la propiedad de tamaño automático se establezca en True Entonces, por cierto, puedes usar cualquier fórmula para mantener la etiqueta centrada en la forma.

 private void lblReport_SizeChanged(object sender, EventArgs e) { lblReport.Left = (this.ClientSize.Width - lblReport.Size.Width) / 2; }