From 5ee5fa6d1bf0127be45137d50edb9e04ead65e74 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 19 Sep 2022 10:52:48 +0200 Subject: [PATCH] Common/GridBuilder: add SetDateTimeColumns for TreeList --- GUIs.Common/GridBuilder.vb | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/GUIs.Common/GridBuilder.vb b/GUIs.Common/GridBuilder.vb index c70665d8..3ab51893 100644 --- a/GUIs.Common/GridBuilder.vb +++ b/GUIs.Common/GridBuilder.vb @@ -5,6 +5,7 @@ Imports DevExpress.Utils Imports DevExpress.XtraGrid.Columns Imports DevExpress.XtraGrid.Views.Grid Imports DevExpress.XtraTreeList +Imports DevExpress.XtraTreeList.Columns Public Class GridBuilder Private ReadOnly EvenRowBackColor = Color.Gainsboro @@ -81,12 +82,36 @@ Public Class GridBuilder ToList() For Each oDateCol In oDateColumns - oDateCol.DisplayFormat.FormatType = FormatType.Custom - oDateCol.DisplayFormat.FormatString = "g" - oDateCol.DisplayFormat.Format = DateTimeFormatInfo.CurrentInfo + SetDateTimeColumn(oDateCol) Next End Sub + Public Sub SetDateTimeColumns(pTreeList As TreeList) + If pTreeList.Columns Is Nothing Then + Exit Sub + End If + + Dim oDateColumns = pTreeList.Columns.AsEnumerable. + Where(Function(column As TreeListColumn) column.ColumnType = GetType(Date)). + ToList() + + For Each oDateCol In oDateColumns + SetDateTimeColumn(oDateCol) + Next + End Sub + + Private Sub SetDateTimeColumn(pColumn As GridColumn) + pColumn.DisplayFormat.FormatType = FormatType.Custom + pColumn.DisplayFormat.FormatString = "g" + pColumn.DisplayFormat.Format = DateTimeFormatInfo.CurrentInfo + End Sub + + Private Sub SetDateTimeColumn(pColumn As TreeListColumn) + pColumn.Format.FormatType = FormatType.Custom + pColumn.Format.FormatString = "g" + pColumn.Format.Format = DateTimeFormatInfo.CurrentInfo + End Sub + ''' ''' Applies common properties to all GridViews '''