columna.DataType = System.Type.GetType("System.Decimal");
Luego voy llenando varias filas del datatable y a medida que inserto una
fila despliego el avance en un DataGridView. El problema que tengo es
que no puedo hacer que la columna de tipo Decimal aparezca siempre con
dos posiciones decimales, por ejemplo si introduzco 14 me despliegue
14.00 y si introduzco 2.3 me despliegue 2.30, etc. Otro detalle, cuando
recupero los datos directamente desde SQL Server siempre me despliega
con 4 decimales en el datagridview, por ej: 2.3000
Como puedo hacer para que me despliegue siempre con 2 decimales?
de antemano muchas gracias
> he definido un DataTable con sus respectivas columnas y una de ellas de
> tipo decimal como sigue:
>
> columna.DataType = System.Type.GetType("System.Decimal");
>
> Luego voy llenando varias filas del datatable y a medida que inserto una
> fila despliego el avance en un DataGridView. El problema que tengo es que
> no puedo hacer que la columna de tipo Decimal aparezca siempre con dos
> posiciones decimales, por ejemplo si introduzco 14 me despliegue 14.00 y
> si introduzco 2.3 me despliegue 2.30, etc.
Hola, Marco Antonio:
Por los ejemplos de n�meros que has indicado, entiendo que tienes el punto
como separador decimal en la configuraci�n regional de Windows. Si he
entendido bien el contenido de tu mensaje, no veo yo donde est� el problema,
porque es correcto que si escribes 14 te aparezca 14.00, y si escribe 2.3
que te aparezcan 2.30, es decir, con dos decimales, tal y como as� demandas.
No obstante, siempre puedes especificarle un formato num�rico a la columna
del control DataGridView, una vez que �ste control se encuentre enlazado con
el objeto DataTable:
DataGridViewColumn col = dataGridView1.Columns["Nombre_Columna"];
col.DefaultCellStyle.Format = "N2";
> Otro detalle, cuando recupero los datos directamente desde SQL Server
> siempre me despliega con 4 decimales en el datagridview, por ej: 2.3000
>
> Como puedo hacer para que me despliegue siempre con 2 decimales?
Para que se "despliegue" siempre con 2 decimales, ya te he comentado lo que
tienes que hacer. Pero si se te "despliega" con 4 decimales, digo yo que
ser� debido a la Escala que tenga definida la columna en la tabla de la base
de datos de SQL Server. Si el tipo de dato de la columna es Decimal, y tiene
una Escala de 4, los valores de los campos se "desplegar�" con 4 decimales.
Un saludo
--
Enrique Mart�nez
[MS MVP - VB]
Nota informativa: La informaci�n contenida en este mensaje, as� como el
c�digo fuente incluido en el mismo, se proporciona �COMO EST��, sin
garant�as de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en pr�ctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.
muchas gracias SoftJa�n
> col.DefaultCellStyle.Format = "N2";
era lo que necesitaba.
saludos!