net formatear defaultcellstyle columns column c# winforms data-binding datetime datagridview

c# - defaultcellstyle - ¿Cómo formatear las columnas de DateTime en DataGridView?



formatear datagridview c# (5)

Puede establecer el formato en aspx, simplemente agregue la propiedad "DateFormatString" en su BoundField.

DataFormatString="{0:dd/MM/yyyy hh:mm:ss}"

Estoy usando un DataGridView con enlace de datos de objetos para mostrar información sobre las entidades de registro en un sistema, recuperado a través de SOAP desde un servicio remoto. Una de las columnas se llama "Última acción" y significa la última vez que la entidad registró un mensaje. Es un valor de System.DateTime . Cuando leo la respuesta SOAP (ejemplo a continuación), la marca de tiempo obviamente contiene toda la información, hasta las segundas fracciones.

<LoggingEntity> <host>marty86ce</host> <process>10148</process> <logger>http_core</logger> <appName>httpd</appName> <ffda>true</ffda> <lastAction>2010-10-27T12:00:19.5117509Z</lastAction> <lastHeartbeat>0001-01-01T00:00:00</lastHeartbeat> <channelId>em_9BA2A2B4D0B6E66</channelId> <ffdaChannelId>em_E7C8D1D4DE8EEB9</ffdaChannelId> </LoggingEntity>

Cuando lo visualizo sobre la mesa, en cambio puedo leer los minutos Utilizo el siguiente código para hacer el enlace de datos cuando presiono el botón de actualización

public void RefreshEntities() { IEntityManagement management = EntityPlugin.GetProxy(); LoggingEntity[] result = management.FindLoggingEntities(new TemplateQuery { ffdaSpecified = true, ffda = true }); //Remote invocation Invoke(new MethodInvoker(delegate { gridEntities.DataSource = result; })); //THIS does the data binding from the array Invoke(new MethodInvoker(delegate { btnRefresh.Enabled = true; })); }

Me gustaría saber cómo controlar el formato de columna de valores enlazados a datos. Creo que el formato dd / MM / aaaa hh: mm proviene de la configuración de mi sistema. ¿Cómo sobrescribir la configuración de formato mediante programación?

Gracias de antemano

Código de solución completa en Subversion (programa FFDAGui) para el proyecto de código abierto Logbus-ng.


Puede establecer el formato que desee:

dataGridViewCellStyle.Format = "dd/MM/yyyy"; this.date.DefaultCellStyle = dataGridViewCellStyle; // date being a System.Windows.Forms.DataGridViewTextBoxColumn


Si se trata de un formulario de Windows Datagrid, puede usar el siguiente código para formatear la fecha y hora de una columna

dataGrid.Columns[2].DefaultCellStyle.Format = "MM/dd/yyyy HH:mm:ss";

EDITAR:

Aparte de esto, si necesita la fecha y hora en formato AM / PM, puede usar el siguiente código

dataGrid.Columns[2].DefaultCellStyle.Format = "MM/dd/yyyy hh:mm:ss tt";


Usé este código Espero que pueda ayudar

dataGridView2.Rows[n].Cells[3].Value = item[2].ToString(); dataGridView2.Rows[n].Cells[3].Value = Convert.ToDateTime(item[2].ToString()).ToString("d");