Як включити амперсанд (&) до вмісту елемента ComboBoxItem


84

На даний момент у мене є Combobox, такий як:

//XAML
<ComboBox>
<ComboBoxItem> Awake & Alive</ComboBoxItem>
</ComboBox>

Це викликає помилку: посилання на сутності або послідовності, що починаються з амперсанда '&', повинні закінчуватися крапкою з комою ';'.

Я припускаю, що мені не вистачає якоїсь послідовності екранування, щоб дозволити мені використовувати &. Як я можу встановити вміст цього комбінованого пункту так, щоб він включав &?

Відповіді:


173

Використовуйте &amp;для кодування амперсанда.

//XAML
<ComboBox>
<ComboBoxItem> Awake &amp; Alive</ComboBoxItem>
</ComboBox>

20

Коротка відповідь - використовувати &amp;для кодування амперсанда.

Див. Також Юридичні особи: Обробка спеціального вмісту на XML.com:

На найнижчих рівнях синтаксичний аналізатор XML - це лише програма, яка за один раз читає XML-документ і аналізує його так чи інакше, а потім поводиться відповідно. Він знає, що певний вміст має обробляти не так, як інший. Що відрізняє ці особливі випадки, це наявність таких символів, як " &" та " <". Вони виконують роль прапорів парсера; вони розмежовують фактичний зміст документа, попереджаючи аналізатор про те, що він повинен на цей момент зробити щось інше, ніж просто передати сусідній вміст якомусь додатковому додатку.

... Так що один з способів , щоб обійти вашу безпосередню проблему, щоб замінити амперсанд в змісті з відповідним посиланням на сутність: <company>Harris &amp; George</company>.


У своїй відповіді я виправив термінологію (кодування проти втечі). Дякую, що звернули увагу на мене.
Andy West

Посилання містить корисні порівняння для>, <, "та '. Див. Таблицю, починаючи з" Посилання на сутність Стенди для ... "
CrimsonX

Це груба відповідь :) thnx :)
Апоорва,

7

Крім того, ви можете використовувати тег CDATA навколо вмісту елемента ComboBoxItem; Я думаю, що це краще підтримує читабельність тексту.

//XAML
<ComboBox>
<ComboBoxItem><![CDATA[Awake & Alive]]></ComboBoxItem>
</ComboBox>

Для довідки: http://www.w3schools.com/xmL/xml_cdata.asp

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.