Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DaniloTec

GridView e XML

Recommended Posts

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

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

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

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

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

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

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

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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.