如果我給TextRenderer.MeasureText一些文本來衡量和寬度使用它將返回顯示該文本所需的高度。LinkLabel需要比TextRenderer.MeasureText更多的空間說
private static int CalculateHeight(string text, Font font, int width)
{
Size size = TextRenderer.MeasureText(text, font, new Size(width, Int32.MaxValue), TextFormatFlags.NoClipping | TextFormatFlags.WordBreak);
return size.Height;
}
如果我給文本,寬度和高度的LinkLabel它會顯示寬度和高度的文本提供沒有任何截斷。
但是,如果我將鏈接放入LinkLabel.Links集合中,則LinkLabel將繪製文字,看起來多少有些字符之間的間距,並且有時會導致文本的末尾被裁剪。無論如何要防止這一點?我曾嘗試在有鏈接時添加填充,但沒有可靠的方法來確切知道需要多少空間。有沒有其他方法可以做到這一點?
如果修復涉及得到正確的測量值,然後仍然使用LinkLabel控件,則似乎需要通過MeasureText或DrawTextEx來了解該文本將顯示爲鏈接,但沒有任何類似的內容。正如我在問題中所說的,如果文本只會顯示爲純文本,則MeasureText可以正常工作。 – 2009-06-05 17:51:51
您是否在LinkLabel上啓用了AutoSize? – 2009-06-05 18:25:55