Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d61104aaab | |||
| 2e2f2dd66d |
@@ -2,15 +2,15 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:OPTIMIZER="clr-namespace:EgtBEAMWALL.Optimizer"
|
||||
xmlns:EgwWPFBaseLib="clr-namespace:EgwWPFBaseLib;assembly=EgwWPFBaseLib"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxgt="http://schemas.devexpress.com/winfx/2008/xaml/grid/themekeys"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxb="http://schemas.devexpress.com/winfx/2008/xaml/bars"
|
||||
xmlns:dxfui="http://schemas.devexpress.com/winfx/2008/xaml/core/filteringui"
|
||||
xmlns:i="http://schemas.devexpress.com/winfx/2008/xaml/mvvm">
|
||||
xmlns:i="http://schemas.devexpress.com/winfx/2008/xaml/mvvm"
|
||||
xmlns:OPTIMIZER="clr-namespace:EgtBEAMWALL.Optimizer"
|
||||
xmlns:EgwWPFBaseLib="clr-namespace:EgwWPFBaseLib;assembly=EgwWPFBaseLib">
|
||||
<UserControl.Resources>
|
||||
<OPTIMIZER:DataGridCellBorderThicknessConverter x:Key="DataGridCellBorderThicknessConverter"/>
|
||||
<OPTIMIZER:ProjIdToBtlFileName x:Key="ProjIdToBtlFileName"/>
|
||||
@@ -34,7 +34,6 @@
|
||||
</UserControl.Resources>
|
||||
<Grid>
|
||||
<dxg:GridControl x:Name="BTLPart_GridControl"
|
||||
Grid.Column="1"
|
||||
ItemsSource="{Binding Tag.BTLPartVMList,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type OPTIMIZER:BTLPartListV}}}"
|
||||
AutoExpandAllGroups="True"
|
||||
|
||||
@@ -5,7 +5,6 @@ Imports DevExpress.Skins
|
||||
Imports DevExpress.Xpf.Bars
|
||||
Imports DevExpress.Xpf.Core.Serialization
|
||||
Imports DevExpress.Xpf.Grid
|
||||
Imports DevExpress.Xpf.Data.grids
|
||||
Imports EgtBEAMWALL.Core
|
||||
|
||||
Public Class BTLPartListV
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,8 +1,88 @@
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports System.IO
|
||||
Imports DevExpress.Data
|
||||
Imports DevExpress.Xpf.Bars
|
||||
Imports DevExpress.Xpf.Core.Serialization
|
||||
Imports DevExpress.Xpf.Grid
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib.EgtInterface
|
||||
|
||||
Public Class RawPartListV
|
||||
|
||||
Private m_RawPartListVM As RawPartListVM
|
||||
|
||||
Private m_sDataGridLayoutPath As String = ""
|
||||
|
||||
Sub New()
|
||||
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
|
||||
' Add any initialization after the InitializeComponent() call.
|
||||
m_sDataGridLayoutPath = Path.GetDirectoryName(DataGridColumnsIniFile.m_sDataGridColumnsIniFile) & "\NewDataGridLayoutFile2.json"
|
||||
|
||||
For Each Column In RawPart_GridControl.Columns
|
||||
Column.[AddHandler](DXSerializer.AllowPropertyEvent,
|
||||
New AllowPropertyEventHandler(AddressOf OnAllowProperty))
|
||||
Next
|
||||
End Sub
|
||||
|
||||
' imposto parametri aggiuntivi da scrivere in Json colonne tabella
|
||||
Private Sub OnAllowProperty(ByVal sender As Object, ByVal e As AllowPropertyEventArgs)
|
||||
If e.DependencyProperty Is GridColumn.AllowResizingProperty Then
|
||||
e.Allow = True
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' salvataggio del layout colonne
|
||||
Public Sub SaveBTLPartGridControlLayout()
|
||||
RawPart_GridControl.SaveLayoutToJson(m_sDataGridLayoutPath)
|
||||
End Sub
|
||||
|
||||
Public Sub Me_Loaded() Handles Me.Loaded
|
||||
' imposto DataContext
|
||||
m_RawPartListVM = DataContext
|
||||
' imposto riferimento ad action per salvataggio layout tabella
|
||||
m_RawPartListVM.refSaveBTLPartGridControlLayout = AddressOf SaveBTLPartGridControlLayout
|
||||
' rispristino layout tabella
|
||||
If Not IsNothing(m_sDataGridLayoutPath) AndAlso File.Exists(m_sDataGridLayoutPath) Then
|
||||
RawPart_GridControl.RestoreLayoutFromJson(m_sDataGridLayoutPath)
|
||||
End If
|
||||
' da gestire chiamandolo quando viene aperto un progetto o aggiunto/rimosso un btl, per evitare che ci sia il GroupSummary se c'e' un solo gruppo
|
||||
IsVisibleGroupSummary(False)
|
||||
End Sub
|
||||
|
||||
Public Sub IsVisibleGroupSummary(bValue As Boolean)
|
||||
If bValue AndAlso RawPart_GridControl.GroupSummary.Count = 0 Then
|
||||
RawPart_GridControl.GroupSummary.Clear()
|
||||
Dim PDNGroupSummaryItem As New GridSummaryItem() With {.FieldName = "nPDN",
|
||||
.DisplayFormat = "{0}",
|
||||
.SummaryType = SummaryItemType.Count,
|
||||
.ShowInGroupColumnFooter = "nPDN"}
|
||||
RawPart_GridControl.GroupSummary.Add(PDNGroupSummaryItem)
|
||||
Dim CNTGroupSummaryItem As New GridSummaryItem() With {.FieldName = "sCNT",
|
||||
.DisplayFormat = "{0}",
|
||||
.SummaryType = SummaryItemType.Sum,
|
||||
.ShowInGroupColumnFooter = "sCNT"}
|
||||
RawPart_GridControl.GroupSummary.Add(CNTGroupSummaryItem)
|
||||
Dim ADDEDGroupSummaryItem As New GridSummaryItem() With {.FieldName = "sADDED",
|
||||
.DisplayFormat = "{0}",
|
||||
.SummaryType = SummaryItemType.Sum,
|
||||
.ShowInGroupColumnFooter = "sADDED"}
|
||||
RawPart_GridControl.GroupSummary.Add(ADDEDGroupSummaryItem)
|
||||
Dim INPRODGroupSummaryItem As New GridSummaryItem() With {.FieldName = "nINPROD",
|
||||
.DisplayFormat = "{0}",
|
||||
.SummaryType = SummaryItemType.Sum,
|
||||
.ShowInGroupColumnFooter = "nINPROD"}
|
||||
RawPart_GridControl.GroupSummary.Add(INPRODGroupSummaryItem)
|
||||
Dim DONEGroupSummaryItem As New GridSummaryItem() With {.FieldName = "nDONE",
|
||||
.DisplayFormat = "{0}",
|
||||
.SummaryType = SummaryItemType.Sum,
|
||||
.ShowInGroupColumnFooter = "nDONE"}
|
||||
RawPart_GridControl.GroupSummary.Add(DONEGroupSummaryItem)
|
||||
End If
|
||||
RawPart_TableView.ShowGroupFooters = bValue
|
||||
End Sub
|
||||
|
||||
' funzione che permette di selezionare un RawPart anche quando gia' selezionato
|
||||
Private Sub RawPartRow_PreviewMouseDown(sender As Object, e As MouseButtonEventArgs)
|
||||
If Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then Map.refProjectVM.BTLStructureVM.SelBTLPart.SetOpenFeatureList(False)
|
||||
@@ -81,4 +161,52 @@ Public Class RawPartListV
|
||||
.Source = sender})
|
||||
End Sub
|
||||
|
||||
' customizzazione ContextMenu del GridControl
|
||||
Private Sub OnShowGridMenu(sender As Object, e As DevExpress.Xpf.Grid.GridMenuEventArgs)
|
||||
If e.MenuType = GridMenuType.Column Then
|
||||
' rimozione bottoni
|
||||
e.Customizations.Add(New RemoveAction() With {.ElementName = DefaultColumnMenuItemNames.GroupBox})
|
||||
e.Customizations.Add(New RemoveAction() With {.ElementName = DefaultColumnMenuItemNames.GroupColumn})
|
||||
e.Customizations.Add(New RemoveAction() With {.ElementName = DefaultColumnMenuItemNamesBase.ColumnChooser})
|
||||
e.Customizations.Add(New RemoveAction() With {.ElementName = DefaultColumnMenuItemNames.BestFit})
|
||||
e.Customizations.Add(New RemoveAction() With {.ElementName = DefaultColumnMenuItemNames.BestFitColumns})
|
||||
e.Customizations.Add(New RemoveAction() With {.ElementName = DefaultColumnMenuItemNamesBase.FilterEditor})
|
||||
|
||||
Dim info As GridColumnMenuInfo = CType(e.MenuInfo, GridColumnMenuInfo)
|
||||
Dim item As ColumnBase = CType(info.Column, ColumnBase)
|
||||
' aggiunta separatore
|
||||
Dim separator As BarItemLinkSeparator = New BarItemLinkSeparator()
|
||||
e.Customizations.Add(separator)
|
||||
' aggiunta bottone AllowResize e Auto Fit
|
||||
Dim AllowResize As BarCheckItem = New BarCheckItem() With {.Content = "Allow Resize", .IsChecked = (RawPart_TableView.AllowResizing AndAlso (item.AllowResizing = DevExpress.Utils.DefaultBoolean.True OrElse item.AllowResizing = DevExpress.Utils.DefaultBoolean.Default))}
|
||||
AddHandler AllowResize.CheckedChanged, AddressOf AllowResize_CheckedChanged
|
||||
e.Customizations.Add(AllowResize)
|
||||
If item.AllowResizing = DevExpress.Utils.DefaultBoolean.True OrElse item.AllowResizing = DevExpress.Utils.DefaultBoolean.Default Then
|
||||
Dim FixAuto As BarButtonItem = New BarCheckItem() With {.Content = "Auto Fit"}
|
||||
AddHandler FixAuto.ItemClick, AddressOf FixAuto_ItemClick
|
||||
e.Customizations.Add(FixAuto)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' gestore evento Allow Resize
|
||||
Private Sub AllowResize_CheckedChanged(sender As Object, e As ItemClickEventArgs)
|
||||
Dim info As GridColumnMenuInfo = TryCast(RawPart_TableView.GridMenu.MenuInfo, GridColumnMenuInfo)
|
||||
Dim item As ColumnBase = CType(info.Column, ColumnBase)
|
||||
If item.AllowResizing = DevExpress.Utils.DefaultBoolean.False Then
|
||||
item.AllowResizing = DevExpress.Utils.DefaultBoolean.True
|
||||
Else
|
||||
item.AllowResizing = DevExpress.Utils.DefaultBoolean.False
|
||||
End If
|
||||
End Sub
|
||||
' gestore evento Auto Fit
|
||||
Private Sub FixAuto_ItemClick(sender As Object, e As ItemClickEventArgs)
|
||||
Dim info As GridColumnMenuInfo = TryCast(RawPart_TableView.GridMenu.MenuInfo, GridColumnMenuInfo)
|
||||
Dim item As ColumnBase = CType(info.Column, ColumnBase)
|
||||
item.Width = New GridColumnWidth(1, GridColumnUnitType.Auto)
|
||||
RawPart_TableView.UpdateLayout()
|
||||
item.Width = item.ActualWidth
|
||||
item.AllowResizing = DevExpress.Utils.DefaultBoolean.False
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
@@ -8,6 +8,8 @@ Public Class RawPartListVM
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Friend refSaveBTLPartGridControlLayout As Action
|
||||
|
||||
Private m_colRawPart_StartCut As EgwWPFBaseLib.ColumnLayout
|
||||
Public ReadOnly Property colRawPart_StartCut As EgwWPFBaseLib.ColumnLayout
|
||||
Get
|
||||
@@ -248,6 +250,12 @@ Public Class RawPartListVM
|
||||
m_colPartInRawPart_PosY = PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_POSY)
|
||||
End Sub
|
||||
|
||||
Friend Sub Close()
|
||||
If Not IsNothing(refSaveBTLPartGridControlLayout) Then
|
||||
refSaveBTLPartGridControlLayout()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
End Class
|
||||
|
||||
@@ -428,6 +428,7 @@ Public Class MainWindowVM
|
||||
{S_PARAMETERLIST_P, Map.refPParameterListVM.PParameterListColumns}}
|
||||
EgwWPFBaseLib.EgwDataGrid.WriteColumnLayout(DataGridColumnsIniFile.m_sDataGridColumnsIniFile, DataGridColumnDictionary)
|
||||
Map.refPartListVM.Close()
|
||||
Map.refRawPartListVM.Close()
|
||||
|
||||
End If
|
||||
' Termino il Model
|
||||
|
||||
Reference in New Issue
Block a user