Visual Basic.NET - datagridview y XML

 
Vista:

datagridview y XML

Publicado por Javier (13 intervenciones) el 07/10/2007 02:17:17
Hola a todos , tengo una pregunta para hacer

Alguien sabe como llenar un datagridview con un archivo XML ???
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:datagridview y XML

Publicado por George (1 intervención) el 16/11/2007 20:54:45
hola javier soy nuevo en esto de vb.net y hasta ahora he encontrado muy poco sobre ese tema y bueno al grano he logrado mostrar un archivo XML en un DATAGRIDVIEW pero me parece que no es la manera mas eficaz de hacerlo pero alli te doy un ejemplo para que tengas una idea y partas de alli para hacer una investigacion mas profunda y si sabes algo mas me avisas aqui esta el codigo:
primero debes declarar un DATASET el cual va a contener la fuente de datos

Dim ds As DataSet

'lo inicializamos
ds = New DataSet()

'luego le pasamos la ruta de donde se encuentra el archivo XML al DATASET
ds.ReadXml("Ruta del archivo XML")

'luego asignamos el objeto TABLE del DATASET al DATAGRIDVIEW
Me.dgv.DataSource = ds.Tables(6).DefaultView

en esta parte es la que me parece que no es muy buena por que tienes que saber cual es el numero de la tabla en el ds.Tables(?) para que muestre la data exacta.

aqui te dejo esto, es el contenido de un archivo xml con el que he probado y necesito que sea de esa estructura

<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
xmlns:rs='urn:schemas-microsoft-com:rowset'
xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly'>
<s:AttributeType name='IdDoc' rs:number='1' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='CodMat' rs:number='2' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='string' dt:maxLength='8'/>
</s:AttributeType>
<s:AttributeType name='CodFam' rs:number='3' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='string' dt:maxLength='2'/>
</s:AttributeType>
<s:AttributeType name='Descri' rs:number='4' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='string' dt:maxLength='60'/>
</s:AttributeType>
<s:AttributeType name='UniMat' rs:number='5' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='string' dt:maxLength='6'/>
</s:AttributeType>
<s:AttributeType name='CosMat' rs:number='6' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='float' dt:maxLength='8' rs:precision='15' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='Desper' rs:number='7' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='float' dt:maxLength='8' rs:precision='15' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='Provee' rs:number='8' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='string' dt:maxLength='40'/>
</s:AttributeType>
<s:AttributeType name='Consum' rs:number='9' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='string' dt:maxLength='1'/>
</s:AttributeType>
<s:AttributeType name='FecMat' rs:number='10' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='variantdate' dt:maxLength='16' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='Importado' rs:number='11' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='PorNacImp' rs:number='12' rs:nullable='true' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='float' dt:maxLength='8' rs:precision='15' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='EquActFij' rs:number='13' rs:maydefer='true' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'/>
</s:AttributeType>
<s:extends type='rs:rowbase'/>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row IdDoc='1' CodMat='01' CodFam='1' Descri='material de prueba' UniMat='2' CosMat='5000' Desper='0.0001'
Provee='proveera 2033' Consum='S' FecMat='2007-12-12T00:00:00' Importado='False' PorNacImp='15' EquActFij='True'/>
</rs:data>
</xml>

bueno con esto a mi me funciona si sabes de algun metodo mejor me avisas gracias....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:datagridview y XML

Publicado por Didier (1 intervención) el 21/11/2007 22:50:28
Te doy una manera mas practica, primero crea un DataTable y mediante codigo creale columnas y un par de datos(no es necesario) luego mediante codigo llamas los siguientes métodos tabla.WriteXmlSchema("NombreEsquema.xsd") y tabla.WriteXml("NombreXml.xml") y tendras el esquema (xsd) y un xml con alguna data en tu carpeta de la aplicacion, luego para llenar el DataTable con el xml haces lo contrario, primero tabla.ReadXmlSchema("NombreEsquema.xsd") y tabla.ReadXml("NombreXml.xml") obviamente llenaste el xml con la data que necesites, saludos y suerte ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar