DaniloTec 0 Denunciar post Postado Abril 29, 2009 Bom dia. Procurando na internet, cheguei a esta conclusão para popular um GridView com um XML: DataSet ds = new DataSet(); GridView gv = new GridView(); ds.ReadXml("C:\\Documents and Settings\\Danilo\\Meus documentos\\endereco.xml"); gv.DataSource = ds.Tables[0].DefaultView; gv.DataBind(); lblXML.Text = gv.ToString(); Mas não está funcionando. A label está mostrando um resultado um tanto estranho: System.Web.UI.WebControls.GridView Outra coisa: O que significa a linha? gv.DataSource = ds.Tables[0].DefaultView; Grato! Compartilhar este post Link para o post Compartilhar em outros sites
Juliano.net 2 Denunciar post Postado Abril 29, 2009 A linha abaixo vai gerar o resultado "estranho" mesmo, pois você está tentando atribuir o "conteúdo" de um GridView a um Label. lblXML.Text = gv.ToString(); Coloquei conteúdo entre aspas pois a função ToString do GridView não retorna uma string com o conteúdo do GridView (a menos que você sobrescreva esta função). Você tem que informar de qual linha e qual coluna você quer capturar um valor. E a linha citada: gv.DataSource = ds.Tables[0].DefaultView; Está dizendo para carregar o GridView com a visualização padrão da primeira DataTable do DataSet. Compartilhar este post Link para o post Compartilhar em outros sites
DaniloTec 0 Denunciar post Postado Abril 29, 2009 Entendi o porque do "estranho", rs. Mas como eu faria pra ele retornar o grid todo? Como se fosse uma tabela? Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Abril 29, 2009 Movido Plataforma .NET http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma .NET » Web Applications Mas o que deseja fazer? A grid ja não esta sendo aprensentada na tela? O que você pode fazer é retornar sua fonte de dados se for necessário para outro método. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
DaniloTec 0 Denunciar post Postado Abril 29, 2009 Não, o grid não está sendo apresentado na tela. Quero que ele apareça assim que ele for populado pelo XML. Compartilhar este post Link para o post Compartilhar em outros sites
Faccruz 0 Denunciar post Postado Abril 29, 2009 você está criando o GridView manualmente? ou colocou o componente na tela? Se estiver criando manualmente, acredito que precise setar a propriedade AutoGenerateColumns e adicinar o GridView na página. Outra coisa, o arquivo XML possui dados? Compartilhar este post Link para o post Compartilhar em outros sites
DaniloTec 0 Denunciar post Postado Abril 29, 2009 Sim, estou criando o gridview manualmente. Sim, o XML possui dados. Compartilhar este post Link para o post Compartilhar em outros sites
Faccruz 0 Denunciar post Postado Abril 29, 2009 É uma aplicação aspx? Está adicionando ele na página? Compartilhar este post Link para o post Compartilhar em outros sites
Juliano.net 2 Denunciar post Postado Abril 29, 2009 Danilo, No HTML da sua página, coloque o seguinte código onde quiser que o GridView apareça: <asp:Panel id="gridPanel" runat="server"></asp:Panel> E logo após a linha: GridView gv = new GridView(); Coloque: gridPanel.Controls.Add(gv); Você está criando sua página via bloco de notas ou algo do tipo? Caso não tenha o Visual Studio, sugiro que utilize o Web Developer Express Edition (versões Express do Visual Studio). Compartilhar este post Link para o post Compartilhar em outros sites
DaniloTec 0 Denunciar post Postado Abril 29, 2009 Estou usando o Visual Studio 2005 e compilou certinho. O único problema foi que apareceu aquela string no lugar do gridview. Vou tentar do jeito que você falou, Juliano e posto o resultado. Por horas, vlw! Compartilhar este post Link para o post Compartilhar em outros sites
Ricardo_Araújo 0 Denunciar post Postado Julho 28, 2010 Podias postar a resolução do problema? Estou com a mesma dúvida. Quero carregar um XML para uma GridView no Visual Studio e não estou a ser capaz. Para uma TreeView consigo mas para GridView não. Obrigado Compartilhar este post Link para o post Compartilhar em outros sites