Cách bao gồm dấu và (&) trong nội dung của ComboBoxItem


84

Tôi hiện có một Combobox như sau:

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

Điều này gây ra lỗi: Tham chiếu thực thể hoặc chuỗi bắt đầu bằng dấu và '&' phải được kết thúc bằng dấu chấm phẩy ';'.

Tôi cho rằng tôi đang thiếu một chuỗi thoát của một số loại để cho phép tôi sử dụng dấu &. Làm cách nào để đặt nội dung của comboboxitem này bao gồm dấu &?

Câu trả lời:


173

Sử dụng &amp;để mã hóa dấu và.

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

20

Câu trả lời ngắn gọn là sử dụng &amp;để mã hóa một ký hiệu và.

Xem thêm Thực thể: Xử lý Nội dung Đặc biệt trên XML.com:

Ở các cấp thấp nhất, trình phân tích cú pháp XML chỉ là một chương trình đọc qua tài liệu XML một ký tự tại một thời điểm và phân tích nó theo cách này hay cách khác, sau đó hoạt động tương ứng. Nó biết rằng nó phải xử lý một số nội dung khác với những nội dung khác. Điều phân biệt những trường hợp đặc biệt này là sự hiện diện của các ký tự như " &" và " <". Chúng hoạt động như cờ đối với trình phân tích cú pháp; chúng phân định nội dung thực tế của tài liệu, cảnh báo trình phân tích cú pháp rằng nó phải làm gì đó tại thời điểm này ngoài việc chuyển nội dung liền kề cho một số ứng dụng xuôi dòng.

... Vì vậy, một cách để có được xung quanh vấn đề trước mắt của bạn là để thay thế cho dấu trong nội dung của bạn với các tài liệu tham khảo thực thể thích hợp: <company>Harris &amp; George</company>.


Tôi đã sửa chữa thuật ngữ (mã hóa so với thoát) trong câu trả lời của mình. Cám ơn bạn đã khiến tôi chú ý tới việc này.
Andy West

Liên kết của bạn có các so sánh hữu ích cho>, <, "và '. Hãy xem bảng bắt đầu bằng" Tham chiếu đối tượng là Viết tắt của ... "
CrimsonX

Thats một câu trả lời GRT :) thnx :)
Apoorva

7

Ngoài ra, bạn có thể sử dụng thẻ CDATA xung quanh nội dung của phần tử ComboBoxItem; Tôi nghĩ rằng nó tốt hơn duy trì khả năng đọc của văn bản.

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

Để tham khảo: http://www.w3schools.com/xmL/xml_cdata.asp

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.