C sharp - DataGrid

 
Vista:

DataGrid

Publicado por GSN (13 intervenciones) el 22/12/2004 17:25:22
Hi!

Utilizo un DataSet con una tabla de una base de datos como DataSource de un DataGrid, me gustaría poder mostrar sólo algunas columnas de este DataSet en vez de todas(cosa que hace automaticamente cuando hago el DataSource), pero no se como hacerlo si alguien me pudiera ayudar le estaria agradecido. Empleo C#.
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:DataGrid

Publicado por Edgar (278 intervenciones) el 22/12/2004 21:17:39
Hola

Una vez creada la vista usas la propiedad RowFilter para filtrar los datos, esto se comporta como la clausula Where de SQL, debes usarla asi

dv.RowFilter = "codigo = 'XXXX'"

Saludos
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:DataGrid

Publicado por GSN (13 intervenciones) el 27/12/2004 17:28:36
Muchas Gracias, pero con el DataView solo consigo acceder a las filas( a lo mejor se me está escapando algo), yo lo que quiero es coger algunas columnas en concreto para mostrarlas. Quería hacerlo haciendo una consulta a la base de datos y obteniendo todas las columnas de la tabla metiendo esto en un DataSet para posteriormente mostrar diferentes configuraciones de las mismas en el datagrid, haciendo tan sólo una consulta a la BD.

Feliz Año a todos!!
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:DataGrid

Publicado por Edgar (278 intervenciones) el 27/12/2004 18:48:23
Hola

Bueno.. en ese caso, debes crear un TableStyle. Estos objetos definen un estilo de tabla, con ellos puedes indicar que columnas mostrar y el formato de las mismas.

En el grid tienes una propiedad TableStyle, alli te mostrará una ventana para configurar todo lo que necesitas para hacer esto. Puedes definir tantos estilos como desees, mostrando el que mas te convenga en un momento dado

Saludos
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
sin imagen de perfil
Val: 158
Bronce
Ha disminuido 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

RE:DataGrid

Publicado por Yamil Bracho (1164 intervenciones) el 27/12/2004 19:02:43
Mas facil todavia...!
Simplemente incluye en el SELECT en el que se basa tu dataView los campos que quieres mostrar...!
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:DataGrid

Publicado por GSN (13 intervenciones) el 28/12/2004 18:00:09
Muchísimas Gracias a ambos!!!

Al fin lo conseguí.

Me ha costado un buen rato de prueba con el TableStyle ( me he liado con el MappingName, ya que no sabia como usarlo) pero al final lo logré.
No he tenido que llegar a modificar el servicioweb del que obtengo la tabla para hacerme un select a medida.

Yujuu!

PD: De nuevo gracias y Feliz Año Nuevo!!!!!
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:DataGrid

Publicado por GSN (13 intervenciones) el 28/12/2004 18:02:50
Hola de nuevo!!!

Sabéis si puedo mezclar columnas de diferentes tablas en el mismo tablestyle?
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
sin imagen de perfil
Val: 158
Bronce
Ha disminuido 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

RE:DataGrid

Publicado por Yamil Bracho (1164 intervenciones) el 28/12/2004 19:10:15
No, pero puedes crear un DataTable con la combinacion de varias tablas y a esa la puedes aplicar el TableStyle que quieras.
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:DataGrid

Publicado por Santiago (12 intervenciones) el 29/12/2004 02:08:12
Hola...

Saludos a todos y felices fiestas . !!

Pues si, mostrar columnas seleccionadas (a partir de un origen de datos) en un datagrid es una tarea sencilla, si son muchas las columnas quizas se haga un poco tedioso, pero en general, no es mayor cosa..

El objeto DataGrid, provee una coleccion de objectos DataGridTableStyle, que a su vez proveen una coleccion de objectos DataGridColumnStyle.
Usando estos objectos apropiadamentes podremos decirle al datagrid que muestre las columnas que nosotros queramos, a partir de un origen de datos valido cualquiera (por ejemplo el DataSet)

Veamos un ejemplo (el siguiente codigo es una aproximacion, no estoy seguro sobre los parametros de los constructores, pero si lo lees con detenimiento seguramente entenderas.. ;) suerte )

DataSet ds = new DataSet();

FillDataSet(ds);

DataGrid grid = new DataGrid();

DataGridTableStyle ts = new DataGridTableStyle("Clientes");
ts.ColumnStyles.Add(new DataGridColumnStyle("Identificacion"));
ts.ColumnStyles.Add(new DataGridColumnStyle("Nombre"));

grid.TableStyles.Add(ts);

grid.SetDataBind(ds,"Clientes");

Por supuesto todo lo anterior puedes hacerlos via diseñador de Windows.Forms..




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:DataGrid

Publicado por GSN (13 intervenciones) el 30/12/2004 16:59:49
Muxas gracias a todos!!

Parece que va saliendo (espero no encontrarme ningún escollo más de última hora, por ahora uno, pero que he conseguido solucionar gracias a dios :D )

Aprovecho para (por sino lo había hecho antes) desearos un ¡¡Feliz Año Nuevo!!

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:DataGrid

Publicado por Richard (3 intervenciones) el 12/01/2005 22:33:32
Hola amigos:

Tengo un problema al exportar un datagrid a excel. Utilizo el siguiente código:

// Preparación
Response.Buffer = false;
Response.ContentType = "application/vnd.ms-excel";
this.EnableViewState = false;
DataGrid1.AllowPaging = false;
DataGrid1.AllowSorting = false;
DataGrid1.DataBind ();

// Escribimos el html que genera el grid en respuesta para enviarlo al cliente
System.IO.StringWriter tw = new System.IO.StringWriter ();
HtmlTextWriter hw = new HtmlTextWriter (tw);
DataGrid1.RenderControl(hw);
Response.Write(tw.ToString());

// Enviamos los datos al cliente
Response.End();

Sin embargo, cuando abro el excel, todas las tildes y ñ no se exportan bien. Por ejemplo, José María --> José María.

Por favor, ¿puede alguien ayudarme?

Muchas 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:DataGrid

Publicado por GSN (13 intervenciones) el 14/01/2005 18:12:05
Muy Buenas!

Lamento decirte que no se porqué te ocurre esto, puede que exista alguna clase o método que te permita indicar la codificación de los datos que vas a enviar, ya que es posible que sea por esto el motivo por el que no comprende lo que le envias y te pone basura en vez de las ñ y los acentos; pero esto es sólo una hipótesis sin fundamento.

Otra cosa que me gustaría decirte, sin parecer brusco, es que habras tú una nueva hebra consultando este problema ya que es más fácil que lo hagan que aquí colgada, dentro de la que yo hice. Se verá más la nueva consulta, ya que aqui es algo más difícil.

Un saludo.

PD: Si me entero de algo no dudes que te lo avisaré ;)
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