Проблема обрезки и переноса текста в Silverlight - PullRequest
2 голосов
/ 23 ноября 2011

У меня есть следующий макет в XAML:

    <StackPanel Height="40">
        <TextBlock TextWrapping="Wrap" TextTrimming="WordEllipsis"  Margin="0,10,0,10"
                               LineHeight="18" FontSize="12">
                        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce dapibus commodo dui vulputate laoreet. Donec metus purus, consectetur ut sagittis ut, vestibulum id diam. Suspendisse in urna sem. Ut purus arcu, placerat quis tempus cursus, elementum sed sem. Duis condimentum semper tortor, a pulvinar dolor semper sit amet.
        </TextBlock>
    </StackPanel>

Так что внутри моей стековой панели есть текстовое поле.В этом примере я установил высоту в родительской стековой панели, но в моем реальном приложении она установлена ​​на несколько более высокий уровень.

Я должен отображать текст в несколько строк и использовать многоточие в качестве режима обрезки.Проблема в том, что если я использую код XAML выше, последняя строка текста обрезается.Я приложил скриншот, чтобы проиллюстрировать поведение:

text gets cut

Есть ли способ решить эту проблему?Ожидаемое поведение - показывать только первую строку и многоточие в конце.

Ответы [ 2 ]

2 голосов
/ 24 ноября 2011

Что ж, проблема возникла из-за того, что я использовал StackPanels.Высота содержимого внутри StackPanel была настолько большой, насколько это необходимо для отображения всего содержимого в нем.Однако родительский StackPanel имеет ограничение по высоте, и содержимое внутри него обрезается.

Я заменил свой StackPanel на Grid, и обрезка и обертка теперь работают как шарм.

1 голос
/ 23 ноября 2011

из MSDN (http://msdn.microsoft.com/en-us/library/system.windows.controls.textblock.texttrimming%28v=vs.95%29.aspx)

Свойство TextTrimming не имеет никакого эффекта, если только TextWrapping для свойства установлено значение NoWrap.

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