Как определить, сколько символов поместится в метке?C#

Место общения программистов C#
Anonymous
Как определить, сколько символов поместится в метке?

Сообщение Anonymous »

Я нашел следующее:
Можно ли посчитать, сколько символов поместится в метку фиксированной ширины, если шрифт предусмотрен в C#?
Это не сработало, У меня есть метка, и я хочу определить, сколько символов поместится в метке, чтобы я мог изменить содержимое перед назначением. Как это сделать, по приведенной выше ссылке, которую я пробовал:
Graphics g = Graphics.FromHwnd(this.lblDestPathContent.Handle);
int intHeight, intWidth;
g.MeasureString(strPath, this.lblDestPathContent.Font
, this.lblDestPathContent.Size
, null, out intWidth, out intHeight);
this.lblDestPathContent.Text = strPath;

intWidth возвращается той же длины, что и strPath, и не помещается в метку.
lblDestPathContent — это System.Windows.Forms.Label.
[Изменить] Пример вышеизложенного:
strPath contains 154 characters
the size of the label is returned as {Width = 604, Height = 17}
Font is {Name = "Microsoft Sans Serif", Size=8.25}

После вызова MeasureString:
intWidth contains 154
intHeight contains 2


Подробнее здесь: https://stackoverflow.com/questions/784 ... in-a-label

Вернуться в «C#»