WPF: сократить строку до определенной длины - PullRequest
0 голосов
/ 25 августа 2010

У меня есть TreeView с заданной шириной. Когда я добавляю узел с именем, которое превышает максимальную ширину TreeView, он отображает вертикальную полосу прокрутки.

Я бы предпочел отображать только начало имени, за которым следует «...», чтобы избежать полосы прокрутки. Я попробовал Google, но не смог найти результат.

Может кто-нибудь сказать мне, как это делается (не использование Google, я имею в виду сокращение строки)?

Ответы [ 2 ]

1 голос
/ 25 августа 2010

Обычно так:

<TextBlock Text="Whatever" TextTrimming="CharacterEllipsis"/>

Однако вам нужно будет включить это в свои TreeViewItem с помощью шаблона.

0 голосов
/ 25 августа 2010

сначала вы можете установить максимальную ширину в дереве, чтобы избежать этой вертикальной прокрутки. во-вторых, если вы на самом деле добавляете элемент дерева в свое дерево, вы можете установить текст, а затем зарегистрироваться в загруженном событии элемента управления, проверить его фактический размер и выполнить модификацию текста.

но, на мой взгляд, самая элегантная вещь, которую вы можете сделать, - это работать с привязкой данных и иерархическим шаблоном данных, а также с конвертером, который обрежет текст для вас (вы можете отправить элемент дерева в конвертер)

надеюсь, что это поможет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...