Files
egtbeamwall/EgtBEAMWALL.ViewerOptimizer/Statistics/StatisticsUtility.vb
T
Emmanuele Sassi ae795ae501 - Correzioni
- Gestione click feature
-Gestione movimento mouse pareti
2021-09-14 14:39:51 +02:00

69 lines
3.3 KiB
VB.net

Imports System.Collections.ObjectModel
Public Module StatisticsUtility
Public Sub ExportToExcelAndCsv(dgDataGrid As DataGrid, StatisticsVM As StatisticsVM)
' imposto gli header
For Each DataGridColumn In dgDataGrid.Columns
If IsNothing(DataGridColumn) OrElse IsNothing(DataGridColumn.HeaderTemplate) Then Continue For
' recupero il contenuto del HeaderTemplate
Dim DataGridColumnHeaderFE As FrameworkElement = DataGridColumn.HeaderTemplate.LoadContent()
' recupero la stringa di binding
Dim DataGridColumnHeaderBindingText = DataGridColumnHeaderFE.GetBindingExpression(TextBlock.TextProperty).ParentBinding.Path.Path()
' applico la stessa proprieta' del binding
Select Case DataGridColumnHeaderBindingText
Case "DataContext.PDN_Msg"
DataGridColumn.Header = StatisticsVM.PDN_Msg
Case "DataContext.ID_Msg"
DataGridColumn.Header = StatisticsVM.ID_Msg
Case "DataContext.W_Msg"
DataGridColumn.Header = StatisticsVM.W_Msg
Case "DataContext.H_Msg"
DataGridColumn.Header = StatisticsVM.H_Msg
Case "DataContext.L_Msg"
DataGridColumn.Header = StatisticsVM.L_Msg
Case "DataContext.NAM_Msg"
DataGridColumn.Header = StatisticsVM.NAM_Msg
Case "DataContext.MAT_Msg"
DataGridColumn.Header = StatisticsVM.MAT_Msg
Case "DataContext.CNT_Msg"
DataGridColumn.Header = StatisticsVM.CNT_Msg
Case "DataContext.ADDED_Msg"
DataGridColumn.Header = StatisticsVM.ADDED_Msg
Case "DataContext.INPROD_Msg"
DataGridColumn.Header = StatisticsVM.INPROD_Msg
Case "DataContext.DONE_Msg"
DataGridColumn.Header = StatisticsVM.DONE_Msg
Case "DataContext.Used_Msg"
DataGridColumn.Header = StatisticsVM.Used_Msg
Case "DataContext.Waste_Msg"
DataGridColumn.Header = StatisticsVM.Waste_Msg
Case "DataContext.UNIT_VOLUME_Msg"
DataGridColumn.Header = StatisticsVM.UNIT_VOLUME_Msg
Case "DataContext.TOT_VOLUME_Msg"
DataGridColumn.Header = StatisticsVM.TOT_VOLUME_Msg
Case "DataContext.UNIT_TIME_Msg"
DataGridColumn.Header = StatisticsVM.UNIT_TIME_Msg
Case "DataContext.TOT_TIME_Msg"
DataGridColumn.Header = StatisticsVM.TOT_TIME_Msg
End Select
Next
'Dim x = DirectCast(dgDataGrid.ItemsSource, ObservableCollection(Of BTLPartVM))
'Dim TotRow As Core.BTLPartM = Core.BTLPartM.CreateNewBTLPart()
'TotRow.m_sNAM = "Totale"
'TotRow.m_dBtlW = 1234.567
'Dim TotRowVm As BTLPartVM = New BTLPartVM(TotRow, Nothing)
'x.Add(TotRowVm)
'dgDataGrid.SelectAllCells()
'dgDataGrid.ClipboardCopyMode = DataGridClipboardCopyMode.IncludeHeader
Try
ApplicationCommands.Copy.Execute(Nothing, dgDataGrid)
Catch ex As Exception
Map.refMyStatusBarVM.SetOutputMessage("Copy to clipboard impossible", 3, EgtWPFLib5.MSG_TYPE.INFO)
End Try
'x.Remove(TotRowVm)
Map.refMyStatusBarVM.SetOutputMessage("Copied to clipboard", 3, EgtWPFLib5.MSG_TYPE.INFO)
dgDataGrid.UnselectAllCells()
End Sub
End Module