Utilice xpath para obtener el texto del nodo de xml en el formulario web de c#
Si no hace nada y sólo espera cambiar el valor de xpath o DataTextField, no obtendrá el resultado que desea.
Lo más sencillo es cambiar el archivo xml y convertir los elementos secundarios en atributos.
Si no se puede cambiar el xml, existen dos métodos:
1. En lugar de utilizar XmlDataSource, escriba su propio código para completar la lista desplegable.
El código es el siguiente: XmlDocument?doc?=?new?XmlDocument();
doc.Load(Server.MapPath("~/cofing.xml"));
foreach?(XmlNode?node?in?doc.SelectNodes("Info/Bound/value"))
{
this.DropDownList1.Items. Add(new ?ListItem(node.InnerText, ?node.InnerText));
}
if?(this.DropDownList1.Items.Count?gt; ?0) p>
this.DropDownList1.SelectedIndex?=?1;*/
2. El archivo xml permanece sin cambios, escriba un archivo xsl y agréguelo al proyecto, seleccione este archivo de transformación al agregar la fuente de datos. :
========archivo config.xsl================lt;?xml?version="1.0"?encoding=" utf-8"?gt;
lt; xsl: stylesheet?version="1.0"?xmlns: xsl="http://www.w3.org/1999/XSL/Transform"gt; lt ; /"gt;
lt; Infogt; lt; /Infogt; lt; /xsl: templategt; lt; xsl: template?match="Bound"gt;
lt; Boundgt; lt; >
lt; xsl: value-of?select="value"/gt; /xsl: atributogt; el xmldatasource: lt; asp: DropDownList ID="DropDownList1" runat="servidor" DataSourceID="XmlDataSourceBound" DataTextField="valor" DataValueField="valor" gt;
lt; XmlDataSourceBound" runat="servidor" DataFile="~/cofing.xml" TransformFile="~/config.xsl"