По умолчанию для метки установлено значение «Авторазмер», которое должно само по себе позаботиться (при условии, что вы подразумеваете «фоновое поле»).
Итак, все, что вам нужно сделать, это изменить шрифт на основе нового размера формы. Это должно сделать это:
private int _lastFormSize;
private void Form1_Resize(object sender, EventArgs e)
{
var bigger = GetArea(this.Size) > _lastFormSize;
float scaleFactor = bigger ? 1.1f : 0.9f;
label1.Font = new Font(label1.Font.FontFamily.Name, label1.Font.Size*scaleFactor);
_lastFormSize = GetArea(this.Size);
}
private int GetArea(Size size)
{
return size.Height*size.Width;
}
Возможно, вы захотите детерминистически рассчитать масштабный коэффициент на основе увеличения / уменьшения площади формы, но этот код должен, по крайней мере, дать вам эффект.