カスタムのLabelクラスがありますが、描画されたテキストが収まりません。私はここで何が間違っているのですか?
class MyLabel: Label
{
public MyLabel()
{
SetStyle(ControlStyles.SupportsTransparentBackColor | ControlStyles.UserPaint, true);
}
protected override void OnPaint(PaintEventArgs e)
{
using (LinearGradientBrush brush = new LinearGradientBrush(ClientRectangle, Color.Black, Color.LightGray, LinearGradientMode.ForwardDiagonal))
e.Graphics.DrawString(Text, Font, brush, ClientRectangle);
}
}
MyLabelのテキストを「123456790123456790」(AutoSize = true)に設定すると、Designer(または実行時)に「1234567890123456789」(最後のゼロはありませんが、スペースがあります)が表示されます。「1234567890123456789012345678901234567890」を試してみると、「1234567890 1234567890 1234567890 12345678」(「90」はありませんが、スペースがあります)が表示されます。