Как прикрепить Button к Label, чтобы он был динамическим?
Кто-нибудь знает, как "прилепить" кнопку к Label? То есть, если текст Label большой, а он динамический меняется, то кнопка прикреплена к нему и меняется в соответствии с его размером.
Ответы (1 шт):
Автор решения: Alexander Petrov
→ Ссылка
В событии Label.SizeChanged меняете размер кнопки. Всё.
using System.Windows.Forms;
namespace WinForms
{
public partial class Form1 : Form
{
private Label label;
private Button button;
public Form1()
{
//InitializeComponent();
label = new Label { Parent = this, BorderStyle = BorderStyle.FixedSingle, AutoSize = true };
button = new Button { Parent = this, Top = label.Bottom, Width = label.Width };
var textBox = new TextBox { Parent = this, Top = 100 };
label.DataBindings.Add(nameof(label.Text), textBox, nameof(textBox.Text));
label.SizeChanged += Label_SizeChanged;
}
private void Label_SizeChanged(object sender, System.EventArgs e)
{
button.Width = label.Width;
}
}
}
В данном примере приложения вводите текст в TextBox. К нему привязан Label. Текст в обоих контролах меняется синхронно. Также синхронно меняется размер кнопки.