我正在使用标签来显示消息。GetPreferredSize()我已经使用方法计算了标签的大小。当我没有对标签大小时进行任何操作时,此方法工作正常。但是,当我减小标签的宽度时,文本会被剪裁。\n但是,如果我在要显示的文本末尾包含一个换行符 ( ),则在前一种情况下被剪裁的文本将显示在下一行中。
这是我试过的。
label1.Text = "Are you sure you wish to cancel? \n You will permanently discard any information you have entered!";
label1.Font = new Font(new FontFamily("Calibri"), 15);
Size textSize = label1.GetPreferredSize(Size.Empty); //Works fine.
label1.Size = textSize;
textSize.Width -= 25;
label1.Size = textSize;// Text is clipped.
label1.Text = "Are you sure you wish to cancel? \n You will permanently discard any information you have entered! \n "; //Works fine again!
参考图片, 标签文字
如果该方法根据内容计算标签的大小,为什么内容在 case2 中被裁剪而在 case3 中效果很好?宽度和高度有什么关系?谁能解释我错过了什么?
谢谢,
慕侠2389804
慕容3067478
眼眸繁星
相关分类