Ответ 1
Используйте &
для кодирования амперсанда.
//XAML
<ComboBox>
<ComboBoxItem> Awake & Alive</ComboBoxItem>
</ComboBox>
В настоящее время у меня есть Combobox, как показано ниже:
//XAML
<ComboBox>
<ComboBoxItem> Awake & Alive</ComboBoxItem>
</ComboBox>
Возникает ошибка: Ссылки или последовательности объектов, начинающиеся с амперсанда '&' должен заканчиваться точкой с запятой ';'.
Я предполагаю, что мне не хватает какой-либо escape-последовательности, чтобы я мог использовать &. Как я могу установить содержание этого comboboxitem, чтобы включить &? Благодаря
Используйте &
для кодирования амперсанда.
//XAML
<ComboBox>
<ComboBoxItem> Awake & Alive</ComboBoxItem>
</ComboBox>
Короткий ответ заключается в использовании &
для кодирования амперсанда.
См. также Объекты: обработка специального контента на XML.com:
На самых низких уровнях анализатор XML - это просто программа, которая читает XML-документ за раз и анализирует его так или иначе, а затем ведет себя соответственно. Он знает, что он должен обрабатывать какой-то контент по-другому, чем другой контент. Что отличает эти особые случаи, так это наличие таких символов, как "
&
" и "<
". Они действуют как флажки для синтаксического анализатора; они ограничивают фактическое содержимое документа, предупреждая синтаксический анализатор о том, что он должен что-то делать в этой точке, кроме простого передачи соседнего содержимого в какое-то последующее приложение.... Итак, один из способов обойти вашу ближайшую проблему - заменить амперсанд в вашем контенте соответствующей ссылкой на объект:
<company>Harris & George</company>
.
В качестве альтернативы вы можете использовать тег CDATA вокруг содержимого элемента ComboBoxItem; Я думаю, что он лучше поддерживает читаемость текста.
//XAML
<ComboBox>
<ComboBoxItem><![CDATA[Awake & Alive]]></ComboBoxItem>
</ComboBox>
Для справки: http://www.w3schools.com/xmL/xml_cdata.asp