Как отобразить статусы Twitter (псевдо-html) с помощью wpf (powerboots) - PullRequest
2 голосов
/ 02 мая 2009

У меня есть такой текст: 'Rails на IIS7 http://is.gd/vWPn' (это твит Шансельмана). Я хотел бы показать это как-то с помощью wpf. Как мне предварительно обработать текст и какие элементы управления использовать тогда?

В настоящее время я создаю 2 элемента управления: Label и Hyperlink и добавляю их в TextBlock. В powerboots это выглядит так:

boots { border -borderthickness 10 -cornerradius 10 -borderbrush orange `
  { textblock { `
     label 'Rails on IIS7' -backgr green; hyperlink 'http://is.gd/vWPn' -backg 'red' } `
} } -width 400

Однако это выглядит довольно странно - гиперссылка смещена, я понятия не имею, почему. альтернативный текст http://img12.imageshack.us/img12/1363/powerbootshl.jpg

Еще один вопрос - нормально ли использовать Label для отображения текста? Я спрашиваю, потому что кажется, что лейбл не может обернуть его содержимое. Должен ли я использовать TextBlock или что-то еще?

1 Ответ

2 голосов
/ 02 мая 2009

Если честно, я ничего не знаю о PowerBoots. Тем не менее:

Я думаю, что вы на правильном пути, насколько предварительная обработка текста идет. Вам нужно разобрать текст из твита и выяснить, что такое ссылка @, что такое hyperlink и т. Д.

С этим знанием вы можете начать заполнять свой TextBlock, как я думаю, вы пытались сделать в представленном вами коде. Тем не менее, вы правы, считая, что Label не является правильным выбором. Фактически, Элемент, который вы хотите, называется Run. A Run - это не более чем текст, отсюда и термин. В конечном счете, для вашего простого примера код будет выглядеть так:

boots { border -borderthickness 10 -cornerradius 10 -borderbrush orange `
{ textblock { `
    run 'Rails on IIS7' -backgr green; hyperlink 'http://is.gd/vWPn' -backg 'red' } `
} } -width 400

при условии, что я правильно понял синтаксис для PowerBoots.

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