94 lines
3.3 KiB
VB.net
94 lines
3.3 KiB
VB.net
Imports System.Windows
|
|
Imports System.Windows.Controls
|
|
Imports System.Windows.Input
|
|
Imports EgtWPFLib5
|
|
|
|
Public Class OnlyProdNewOpenProjectFileDialogV
|
|
|
|
Private WithEvents m_OpenProjFileDialogVM As NewOpenProjectFileDialogVM
|
|
|
|
#Region "CONSTRUCTOR"
|
|
|
|
Sub New(Owner As Window, OpenProjFileDialogVM As NewOpenProjectFileDialogVM)
|
|
' Funzione che interpreta l'xaml
|
|
InitializeComponent()
|
|
Me.Owner = Owner
|
|
Me.DataContext = OpenProjFileDialogVM
|
|
' Assegno al riferimento locale al VM il VM preso dal DataContext
|
|
m_OpenProjFileDialogVM = OpenProjFileDialogVM
|
|
AddHandler Me.Loaded, AddressOf OpenProjectFileDialog_Loaded
|
|
AddHandler Me.Closing, AddressOf OpenProjectFileDialog_Closing
|
|
End Sub
|
|
|
|
#End Region ' CONSTRUCTOR
|
|
|
|
#Region "METHODS"
|
|
|
|
Public Function EgtShowDialog(ProjectType As ProjectType) As Boolean?
|
|
m_OpenProjFileDialogVM.Init(ProjectType)
|
|
' mostro la finestra di dialogo
|
|
Return Me.ShowDialog()
|
|
End Function
|
|
Public Function EgtShowDialog(ProjectType As ProjectType, ProjectList As List(Of ProjectFileVM)) As Boolean?
|
|
m_OpenProjFileDialogVM.Init(ProjectType, ProjectList)
|
|
' mostro la finestra di dialogo
|
|
Return Me.ShowDialog()
|
|
End Function
|
|
|
|
Public Function EgtShowDialog(ProjectType As ProjectType, GoToProd As Boolean) As Boolean?
|
|
m_OpenProjFileDialogVM.Init(ProjectType, Nothing, GoToProd)
|
|
' mostro la finestra di dialogo
|
|
Return Me.ShowDialog()
|
|
End Function
|
|
|
|
Private Sub OpenProjectFileDialog_Loaded(sender As Object, e As RoutedEventArgs)
|
|
' Carico e imposto posizione finestra
|
|
WinPosFromIniToWindow(S_OPENFILEDIALOG, K_VIEWOPTIMWINPLACE, Me)
|
|
End Sub
|
|
|
|
Private Sub OpenProjectFileDialog_Closing(sender As Object, e As System.ComponentModel.CancelEventArgs)
|
|
If (Keyboard.Modifiers And ModifierKeys.Alt) = ModifierKeys.Alt OrElse Keyboard.IsKeyDown(Key.F4) Then
|
|
e.Cancel = True
|
|
Return
|
|
End If
|
|
' Salvo posizione finestra (se non minimizzata)
|
|
WinPosFromWindowToIni(Me, S_OPENFILEDIALOG, K_VIEWOPTIMWINPLACE)
|
|
End Sub
|
|
|
|
#End Region ' METHODS
|
|
|
|
#Region "EVENTS"
|
|
|
|
Private Sub ProjectList_MouseDoubleClick(sender As Object, e As MouseButtonEventArgs)
|
|
m_OpenProjFileDialogVM.ProjDoubleClick()
|
|
End Sub
|
|
|
|
#End Region ' EVENTS
|
|
|
|
Private Sub OpenBtn_Click(sender As Object, e As RoutedEventArgs) Handles OpenBtn.Click
|
|
DialogResult = m_OpenProjFileDialogVM.VerifySelected()
|
|
End Sub
|
|
|
|
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_OpenProjFileDialogVM.m_CloseWindow
|
|
Me.DialogResult = bDialogResult
|
|
End Sub
|
|
|
|
Private Sub MainDataGrid_CellEditEnding(sender As Object, e As DataGridCellEditEndingEventArgs)
|
|
'm_OpenProjFileDialogVM.SetIsEditNameActive(False)
|
|
End Sub
|
|
|
|
Public Shared ReadOnly IsSelectedProperty As DependencyProperty = DependencyProperty.Register("IsSelected",
|
|
GetType(Boolean),
|
|
GetType(ItemsControl))
|
|
|
|
Public Property IsSelected As Boolean
|
|
Get
|
|
Return DirectCast(GetValue(IsSelectedProperty), Boolean)
|
|
End Get
|
|
Set(value As Boolean)
|
|
SetValue(IsSelectedProperty, value)
|
|
End Set
|
|
End Property
|
|
|
|
End Class
|