Как перевести ® в текстовое представление Silverlight - PullRequest
1 голос
/ 03 апреля 2009

Я звоню в веб-сервис, чтобы получить информацию, которая привязывается к свойству Text TextBlock. Иногда информация будет содержать закодированные специальные символы для HTML - в первую очередь ®, который я считаю символом (r). Текстовый блок Silverlight просто отображает необработанный текст, а не (r). Конечно, я могу вырезать текст, но кажется, что кто-то здесь будет знать, как перевести подобные HTM1-коды в нечто, понятное TextBlock. Мой первый хотя iValueConverter с Regex Relay?

кто-нибудь делал одно из них?

Ответы [ 3 ]

2 голосов
/ 03 апреля 2009

Вам просто нужно использовать HtmlDecode:

System.Windows.Browser.HttpUtility.HtmlDecode(yourStringHere)
1 голос
/ 03 апреля 2009

Я считаю, что вы должны использовать ®, а не $#174;. Я не уверен насчет silverlight, но WPF автоматически переведет эти литералы.

Я признаю, что я не думаю, что это обязательно сработает, если свойство text связано с данными. Если это так, то IValueConverter будет в порядке. В противном случае вы также можете искать / заменять эти литералы в вашем объекте до того, как значение будет связано. Это может быть выполнено в вашей ViewModel (если вы следуете MVVM).

0 голосов
/ 03 апреля 2009

В HTML сущности, подобные>, ссылаются на свое десятичное значение в ASCII, поэтому это так же просто, как заменить выражение на его десятичное значение.

Я предположил, что $ 174; это опечатка, и вы имеете в виду ®

...