Как да се побере текстът в текстов блок в WPF

Имам низ, който трябва да покажа в TextBlock, моят TextBlock има някакъв фиксиран размер, трябва да покажа текста по такъв начин, ако низът не може да се побере в TextBlock, тогава трябва да разделя низа в следващия TextBlock, как мога да направя същото .


person Firoz    schedule 02.12.2009    source източник


Отговори (2)


Защо не опитате да използвате свойството TextWrapping на това TextBlock?

XAML:

<TextBlock TextWrapping="Wrap" Text="very very very long text" Width="30"/>

C#:

myTextBlock.TextWrapping = TextWrapping.Wrap;
person Marcel B    schedule 02.12.2009
comment
моят TextBlock има фиксирана ширина, както и фиксирана височина, ако използвам wordwrap, тогава той ще работи за ширина, но не и за височина. - person Firoz; 02.12.2009
comment
В такъв случай бих предложил текстов блок, който се обвива и има вертикален преглед на превъртане - комбинация от двата ни отговора. - person MoominTroll; 02.12.2009
comment
Наистина ли е необходимо вашият TextBlock да има фиксирана височина? Бихте ли публикували някакъв код от вашата дефиниция на потребителския интерфейс? - person Marcel B; 02.12.2009

Ако не искате обвиване, тогава плъзгането върху хоризонтална/вертикална лента за превъртане е друга опция, която може да искате да проучите. Четейки въпроса, мисля, че обвиването на текст може да е по-подходящо (не звучи така, сякаш искате да скриете нещо), но опциите винаги са добри.

<ScrollViewer Height="30">
    <TextBlock Width="30" TextWrapping="Wrap">HElooooooooooooooooooooooooooooooooooooo</TextBlock>
</ScrollViewer>

РЕДАКТИРАНЕ: Комбинира пренасяне на думи и преглед на превъртане.

person MoominTroll    schedule 02.12.2009
comment
Хубава идея, но ако текстовият блок е малък, това би изглеждало някак странно. - person Marcel B; 02.12.2009
comment
Вярно, но ширина=30 и височина=30 са напълно произволни стойности, които работят с този малък пример. Ако текстовият блок в потребителския интерфейс е наистина малък, но трябва да побере много текст, тогава бих казал, че дизайнът на потребителския интерфейс е виновен. - person MoominTroll; 02.12.2009