From 5d0a7705d51a13f3ff524fc3df0bdbbb330b7dcb Mon Sep 17 00:00:00 2001 From: RenzoL Date: Thu, 3 Mar 2022 17:35:15 +0100 Subject: [PATCH] - Definizione ordine parametri da considerare per Sort di SectionXMaterial degli SParam in finestra Warehouse --- .../WarehouseWnd/WarehouseWndV.xaml | 4 +- .../WarehouseWnd/WarehouseWndVM.vb | 37 ++++++++++++++++++- 2 files changed, 37 insertions(+), 4 deletions(-) diff --git a/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndV.xaml b/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndV.xaml index 3f5b56a2..7954979a 100644 --- a/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndV.xaml +++ b/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndV.xaml @@ -263,8 +263,8 @@ + DisplayMemberPath="sSectionXMaterial" + SortMemberPath="SectionXMaterialDisplayOrder"> diff --git a/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndVM.vb b/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndVM.vb index 34717bfe..50aefac9 100644 --- a/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndVM.vb +++ b/EgtBEAMWALL.ViewerOptimizer/WarehouseWnd/WarehouseWndVM.vb @@ -1274,6 +1274,7 @@ Public Class WarehouseWndVM End Class Public Class SParam + Implements IComparable Public ReadOnly Property W_Msg As String Get @@ -1378,8 +1379,8 @@ Public Class SParam End Get End Property - ' Proprietà per il sorting del SectionXMaterial in base alla prima dimensione della sezione - Public ReadOnly Property dDimension As Double + ' proprietà per il sorting del SectionXMaterial in base alla prima dimensione della sezione + Public ReadOnly Property dFirstDimension As Double Get If SectionXMaterial.nType = MachineType.BEAM AndAlso Not IsNothing(SectXMat) Then Return SectXMat.dW @@ -1391,6 +1392,17 @@ Public Class SParam End Get End Property + ' proprietà per il sorting del SectionXMaterial in base alla seconda dimensione della sezione + Public ReadOnly Property dSecondDimension As Double + Get + If SectionXMaterial.nType = MachineType.BEAM AndAlso Not IsNothing(SectXMat) Then + Return SectXMat.dH + Else + Return 0 + End If + End Get + End Property + ' proprieta' per finestra di aggiunta nuovo grezzo Public ReadOnly Property sDimension As String Get @@ -1484,6 +1496,27 @@ Public Class SParam Quantity_Visibility = Visibility.Visible End Sub + ' definizione di CompareTo per il Sort degli SParam (Materiale -> 1^ dimensione -> 2^ dimensione) + Public Function CompareTo(obj As Object) As Integer Implements IComparable.CompareTo + Dim SParamItem As SParam = DirectCast(obj, SParam) + If sMaterial.CompareTo(SParamItem.sMaterial) <> 0 Then + Return sMaterial.CompareTo(SParamItem.sMaterial) + Else + If dFirstDimension.CompareTo(SParamItem.dFirstDimension) <> 0 Then + Return dFirstDimension.CompareTo(SParamItem.dFirstDimension) + Else + Return dSecondDimension.CompareTo(SParamItem.dSecondDimension) + End If + End If + End Function + + ' proprietà usata come SortMemberPath della colonna SectionXMaterial + Public ReadOnly Property SectionXMaterialDisplayOrder As SParam + Get + Return Me + End Get + End Property + End Class Public Class WhWallParam