Cómo enlazar una estructura de clase XML deserializada específica a Treeview
Quiero hacer una aplicación que deserialice los datos de mi archivo xml a la estructura de clases. Preparé clases con la herramienta 'Pegar XML como clases', sin embargo, todo se hace en campos o tablas comunes y cuando intenté cambiarlo para el serializador List u ObservableCollections, detuve la carga del documento xml correctamente.
Lo que quiero hacer a continuación es la posibilidad de elegir de la vista de árbol, por ejemplo, algún elemento, editarlo y guardarlo en el archivo xml nuevamente. No quiero hacer eso directamente en .xml. Esta es una muestra de mi XML:
<plan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="schema.xsd">
<nagłówek>
<autorzy>
<nazwa>Autorzy:</nazwa>
<autor atr="one">
<numer>222</numer>
<imię>Rust</imię>
<nazwisko>Snow</nazwisko>
</autor>
<autor>
<numer>111</numer>
<imię>Ian</imię>
<nazwisko>Nower</nazwisko>
</autor>
</autorzy>
</nagłówek>
...
Aquí hay ejemplos de clases
/// <remarks/>
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
public partial class plan
{
private planNagłówek nagłówekField;
private planGłówny głównyField;
/// <remarks/>
public planNagłówek nagłówek
{
get
{
return this.nagłówekField;
}
set
{
this.nagłówekField = value;
}
}
/// <remarks/>
public planGłówny główny
{
get
{
return this.głównyField;
}
set
{
this.głównyField = value;
}
}
}
/// <remarks/>
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class planNagłówek
{
private planNagłówekAutorzy autorzyField;
/// <remarks/>
public planNagłówekAutorzy autorzy
{
get
{
return this.autorzyField;
}
set
{
this.autorzyField = value;
}
}
}
y cómo cargo xml:
// Create an instance of the XmlSerializer specifying type and namespace.
XmlSerializer serializer = new XmlSerializer(typeof(XML.plan));
// A FileStream is needed to read the XML document.
FileStream fs = new FileStream("...somepath.../Untitled4.xml", FileMode.Open);
XmlReader reader = XmlReader.Create(fs);
// Use the Deserialize method to restore the object's state.
i = (XML.plan)serializer.Deserialize(reader);
fs.Close();
Esto es lo que tengo más mi archivo xml, tal vez esto te ayude a ayudarme :)https://drive.google.com/file/d/0B0wPodV30rnJSVA1ckVxWldDRDA/view