Tipo XAML intrinseco x:XData
Abilita il posizionamento di isole dati XML all'interno di una produzione XAML. Gli elementi XML all'interno di x:XData
non devono essere considerati dai processori XAML come se fossero parte dello spazio dei nomi XAML predefinito o di qualsiasi altro spazio dei nomi XAML.
x:XData
può contenere codice XML arbitrario ben formato.
Utilizzo dell'elemento oggetto XAML
<x:XData>
<elementDataRoot>
[elementData]
</elementDataRoot>
</x:XData>
Valori XAML
Valore | Descrizione |
---|---|
elementDataRoot |
Singolo elemento radice dell'isola dati racchiusa. Per la maggior parte dei consumer finali, il codice XML che non dispone di una singola radice è considerato non valido. In particolare, è necessaria una singola radice se il x:XData è destinato a un'origine dati XML per WPF o molte altre tecnologie che usano origini XML per il data binding. |
[elementData] |
Opzionale. XML che rappresenta i dati XML. Qualsiasi numero di elementi può essere contenuto come dati degli elementi e gli elementi annidati possono essere contenuti in altri elementi; Tuttavia, si applicano le regole generali di XML. |
Osservazioni
Gli elementi XML all'interno di un oggetto x:XData
possono dichiarare nuovamente tutti i possibili spazi dei nomi e prefissi dell'XMLDOM contenitore all'interno dei dati.
L'accesso a livello di codice ai dati XML e il tipo XAML intrinseco x:XData
è possibile nei servizi XAML .NET tramite la classe XData.
Note sull'utilizzo di WPF
L'oggetto x:XData
viene usato principalmente come oggetto figlio di un XmlDataProvidero in alternativa, come oggetto figlio della proprietà XmlDataProvider.XmlSerializer (in XAML, questo viene in genere espresso nella sintassi degli elementi proprietà).
I dati devono in genere ridefinire lo spazio dei nomi XML di base all'interno dell'isola dati in modo che sia un nuovo spazio dei nomi XML predefinito (impostato su una stringa vuota). Questo è più semplice per semplici isole dati perché le espressioni XPath usate per fare riferimento e associare ai dati possono evitare l'inclusione di prefissi. Le isole dati più complesse possono definire più prefissi per i dati e usare un prefisso specifico per lo spazio dei nomi XML nella radice. In questo caso, tutti i riferimenti all'espressione XPath devono includere il prefisso con mapping dello spazio dei nomi appropriato. Per altre informazioni, vedere Panoramica del data binding .
Tecnicamente, x:XData
può essere usato come contenuto di qualsiasi proprietà di tipo IXmlSerializable. Tuttavia, XmlDataProvider.XmlSerializer è l'unica implementazione di rilievo.
Vedere anche
- XmlDataProvider
- panoramica del data binding di
- Binding Markup Extension
.NET Desktop feedback