2009-04-03 5 views
1

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

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

ответ

2

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

System.Windows.Browser.HttpUtility.HtmlDecode(yourStringHere) 
+0

Спасибо. Просто так легко. Я смог сделать это, когда я извлекаю данные с помощью XLINQ. Я также думаю, что это будет простой iValueConvert – caryden

1

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

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

0

В HTML сущности как & # 62; ссылайтесь на их десятичное значение в ASCII, так что это так же просто, как замена выражения его десятичным значением.

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

+0

. Я это имел в виду. Сожалею. Я исправил выше. – caryden

 Смежные вопросы

  • Нет связанных вопросов^_^