Jak dołączyć znak ampersand (&) do zawartości ComboBoxItem

84

Obecnie mam Combobox podobny do następującego:

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

Powoduje to błąd: odwołania do jednostek lub sekwencje rozpoczynające się znakiem „&” muszą być zakończone średnikiem „;”.

Zakładam, że brakuje mi jakiejś sekwencji ucieczki, aby umożliwić mi użycie &. Jak mogę ustawić zawartość tego comboboxitem tak, aby zawierała znak &?

CrimsonX
źródło

Odpowiedzi:

173

Służy &amp;do kodowania znaku ampersand.

//XAML
<ComboBox>
<ComboBoxItem> Awake &amp; Alive</ComboBoxItem>
</ComboBox>
Andy West
źródło
20

Krótką odpowiedzią jest użycie &amp;do zakodowania znaku ampersand.

Zobacz także Entities: Handling Special Content on XML.com:

Na najniższych poziomach parser XML to po prostu program, który czyta dokument XML po jednym znaku i analizuje go w taki czy inny sposób, a następnie odpowiednio się zachowuje. Wie, że musi przetwarzać niektóre treści inaczej niż inne. Tym, co wyróżnia te szczególne przypadki, jest obecność takich znaków jak „ &” i „ <”. Działają jak flagi dla parsera; ograniczają rzeczywistą zawartość dokumentu, ostrzegając parser o tym, że w tym momencie musi on zrobić coś innego niż po prostu przekazać sąsiednią zawartość do jakiejś aplikacji podrzędnej.

... Tak więc jednym ze sposobów, aby ominąć natychmiastowej problemu jest zastąpienie znaku handlowego w swojej treści z odpowiednim odniesieniem podmiotu: <company>Harris &amp; George</company>.

Sinan Ünür
źródło
W mojej odpowiedzi poprawiłem terminologię (kodowanie vs. ucieczka). Dziękuję za zwrócenie mi na to uwagi.
Andy West
Twój link zawiera przydatne porównania dla>, <, "i '. Zobacz tabelę zaczynającą się od„ Odniesienie do jednostki oznacza ... ”
CrimsonX,
To świetna odpowiedź :) thnx :)
Apoorva
7

Alternatywnie możesz użyć znacznika CDATA wokół zawartości elementu ComboBoxItem; Myślę, że lepiej zachowuje czytelność tekstu.

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

Dla odniesienia: http://www.w3schools.com/xmL/xml_cdata.asp

chaosTechnician
źródło