ASP.NET - Problemas con GridView

 
Vista:
sin imagen de perfil

Problemas con GridView

Publicado por Leonardo Josué (52 intervenciones) el 14/10/2008 17:26:47
Buenos días a todos los foristas, les explico mi problema y espero que alguno de ustedes me pueda ayudar:

Actualmente estoy desarrollando una aplicación ASP.NET con C#. En la aplicación tengo un GridView que se carga dinámicamente a partir de un archivo de Texto Separado por Comas (.CSV). El resultado es un GridView más o menos así:

Campo1 |Campo2 |Campo3|.........| CampoN
Valor11 |Valor12 |Valor13 |.........| Valor1N
Valor21 |Valor22 |Valor23 |.........| Valor2N
Valor31 |Valor32 |Valor33 |.........| Valor3N
Valor41 |Valor42 |Valor43 |.........| Valor4N
Valor51 |Valor52 |Valor53 |.........| Valor5N

Ahora bien, a partir de este GridView quiero obtener una estructura de Arbol (TreeView) con el Renglón de Encabezados, es decir algo como esto:

NombreDelArchivo.txt (Nodo Raiz)
|.......Campo1
|.......Campo2
|.......Campo3
|...
|.......CampoN

Lo que necesito saber es ¿cómo puedo recorrer todo el renglón de encabezados para irlos agregando como nodos de mi TreeView? Al tratar de determinar el número de columnas de mi GridView lo hago con la propiedad GridView.Columns.Count, pero este siempre me está regresando un valor de 0.

Lo que quiero hacer a grandes rasgos es un ciclo como este:

for (i = 0; i < Total_de_columnas_en_el_GridView; i++)
{
TextoEncabezado = GVArchivo.HeaderRow.Cells[i].Text;
Arbol.Nodes.Add(TextoEncabezado):
}

Espero que alguien de ustedes me pueda ayudar.
Saludos y muchas gracias por la ayuda.
Leo
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
sin imagen de perfil

RE:Problemas con GridView

Publicado por Leonardo Josué (52 intervenciones) el 14/10/2008 18:27:24
Encontré la respuesta en otro foro de consulta, les paso la referencia por si a alguien le puede servir:

http://forums.asp.net/p/1216137/2156854.aspx

Para determinar el número de columnas que tiene un GridView debes hacer algo como esto

int NumColumnas = GridView.HeaderRow.Cells.Count;

Les agrego también la función que estoy utilizando para agregar los campos del GridView como Nodos en un TreeView, donde "Archivo" es el nombre que quiero que aparezca en el nodo Raiz, GVOrigen es el GridView que queremos pasar y TVDestino es el TreeView que va a contene la estructura final.

public void GridViewATreeView(string Archivo, GridView GVOrigen, TreeView TVDestino)
{
int i;
//Determina el número de Columnas del GridView
int NumColumnas = GVOrigen.HeaderRow.Cells.Count;
TreeNode NodoRaiz = new TreeNode();
//Ciclo para agregar Todos los Campos del Archivo como nodos Hijos del Arbol
for (i = 0; i < NumColumnas; i++)
{
//Agrega un nodo hijo al nodo raiz
TreeNode NodoHijo = new TreeNode();
NodoHijo.Text = GVOrigen.HeaderRow.Cells[i].Text;
NodoRaiz.ChildNodes.Add(NodoHijo);
}
//Agrega el Nodo Padre con sus tres nodos hijos
NodoRaiz.Text = Archivo;
NodoRaiz.Expanded = true;
TVDestino.Nodes.Add(NodoRaiz);
}

Saludos
Leo
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