У меня есть диаграмма в WPF с множеством меток. Текст на этих этикетках загружается динамически и может быть изменен. Если я установлю ширину только на авто, то эти метки могут перекрываться, что делает текст нечитаемым.
Диаграмма поддерживает несколько размеров, поэтому, если она становится больше, размер столбцов изменяется, и для текста остается больше места. Теперь я хочу настроить текст на доступное пространство. Если он становится слишком маленьким, я больше не хочу отображать метку (доступна всплывающая подсказка, поэтому пользователь по-прежнему получает необходимую информацию). Рассмотрим строку «Случай 1, бла-бла», вероятно, не хватит места для отображения всей строки, а только первого слова. В этом случае я хочу, чтобы строка была «Case 1..», где .. указывало, что во всплывающей подсказке есть дополнительная информация.
Я могу определить длину, доступную для строки. Но как я могу определить место, которое займет одна буква? Конечно, я мог бы просто изменить размер метки, но тогда она просто обрезала бы строку в любом месте, что, вероятно, бесполезно для пользователя (и выглядит некрасиво).
Любые идеи?