Я видел несколько других сообщений об этом, но не видел ничего, что решило бы мою проблему. По сути, мне нужно, чтобы какой-то текст (жирный и нежирный) был красиво заключен в Stackpanel
или Wrappanel
. Вот визуальный ряд:
Мне нужна комбинация двух TextBlocks
, которые вы видите. У меня есть первый полужирный TextBlock
, который содержит «Заголовок:», а затем в той же строке мне нужен следующий TextBlock
, который может переноситься или не переноситься. Если он переносится, мне нужно, чтобы верхняя строка оставалась на верхней строке, а затем переносилась, как если бы все это было одним TextBlock
. Вот сделанный в Paint рисунок того, что мне нужно:
Вот мой код, который у меня есть до сих пор:
<toolkit:WrapPanel Orientation="Horizontal">
<TextBlock Text="Title: " FontWeight="Bold"/>
<TextBlock TextWrapping="Wrap" Text="More text goes here " />
</toolkit:WrapPanel>
<toolkit:WrapPanel Orientation="Horizontal">
<TextBlock Text="Title: " FontWeight="Bold"/>
<TextBlock TextWrapping="Wrap" Text="More text goes here and I want it to wrap lines and go underneath the title but I can't get it to to do that. :( " />
</toolkit:WrapPanel>
Теперь я не против того, чтобы это было сделано в one TextBlock
(если это возможно). Я знаю, что с помощью TextBlock.Inlines
я могу добавить Run
полужирного текста, а затем еще один обычного текста. Проблема в том, что Inlines
нельзя связать с помощью MVVM (которую я не использую в этой демонстрации, но будет использоваться в окончательном коде).
Итак, каким бы ни было решение, мне нужно иметь возможность устанавливать значения TextBlock
s из кода программной части, чтобы я знал, что это можно сделать с помощью MVVM.
Кто-нибудь знает способ добиться этого?
Run
там, где это возможно. - person Peter Ritchie   schedule 05.02.2014