Imports EgtUILib Public Class MachinePageUC ' Riferimento alla MainWindow Private m_MainWindow As MainWindow = Application.Current.MainWindow 'Dichiarazione delle Page UserControl Friend m_AlarmsPageUC As AlarmsPageUC Friend m_ToolsDbPageUC As ToolsDbPageUC Friend m_MachiningDbPageUC As MachiningDbPageUC Friend m_MachineCNPageUC As MachineCNPageUC ' Riferimento alla pagina correntemente attiva Friend m_ActiveMachinePage As MachinePages Enum MachinePages Alarms ToolsDb MachiningDb MachineCN End Enum Private Sub MachinePage_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized 'Creazione delle Page UserControl m_AlarmsPageUC = New AlarmsPageUC m_ToolsDbPageUC = New ToolsDbPageUC m_MachiningDbPageUC = New MachiningDbPageUC m_MachineCNPageUC = New MachineCNPageUC 'Posizionemento nella griglia delle Page UserControl m_AlarmsPageUC.SetValue(Grid.RowProperty, 1) m_ToolsDbPageUC.SetValue(Grid.RowProperty, 1) m_MachiningDbPageUC.SetValue(Grid.RowProperty, 1) m_MachineCNPageUC.SetValue(Grid.RowProperty, 1) AlarmsBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 5) ToolsDBBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 6) MachiningDBBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 7) TestingPageBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 8) ' Apro pagina dati macchina MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms End Sub Private Sub MachinePage_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded ' Inizializzazione della pagina di apertura all'apertura della pagina MachinePage If Not m_MainWindow.m_MachineStatusUC.m_bIsClicked Then AlarmsBtn.IsChecked = True m_ActiveMachinePage = MachinePages.Alarms Else TestingPageBtn.IsChecked = True m_ActiveMachinePage = MachinePages.MachineCN m_MainWindow.m_MachineStatusUC.m_bIsClicked = False End If End Sub Private Sub AlarmsBtn_Click(sender As Object, e As RoutedEventArgs) Handles AlarmsBtn.Click Select Case m_ActiveMachinePage Case MachinePages.Alarms AlarmsBtn.IsChecked = True Case MachinePages.ToolsDb AlarmsBtn.IsChecked = False ToolsDBBtn.IsChecked = True Case MachinePages.MachiningDb AlarmsBtn.IsChecked = False MachiningDBBtn.IsChecked = True Case MachinePages.MachineCN AlarmsBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_MachineCNPageUC) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms End Select End Sub Private Sub ToolsDBBtn_Click(sender As Object, e As RoutedEventArgs) Handles ToolsDBBtn.Click Select Case m_ActiveMachinePage Case MachinePages.Alarms AlarmsBtn.IsChecked = False ToolsDBBtn.IsChecked = True MachinePageGrid.Children.Remove(m_AlarmsPageUC) MachinePageGrid.Children.Add(m_ToolsDbPageUC) m_ActiveMachinePage = MachinePages.ToolsDb Case MachinePages.ToolsDb ToolsDBBtn.IsChecked = True Case MachinePages.MachiningDb ToolsDBBtn.IsChecked = False MachiningDBBtn.IsChecked = True Case MachinePages.MachineCN ToolsDBBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_MachineCNPageUC) MachinePageGrid.Children.Add(m_ToolsDbPageUC) m_ActiveMachinePage = MachinePages.ToolsDb End Select End Sub Private Sub MachiningDBBtn_Click(sender As Object, e As RoutedEventArgs) Handles MachiningDBBtn.Click Select Case m_ActiveMachinePage Case MachinePages.Alarms AlarmsBtn.IsChecked = False MachiningDBBtn.IsChecked = True MachinePageGrid.Children.Remove(m_AlarmsPageUC) MachinePageGrid.Children.Add(m_MachiningDbPageUC) m_ActiveMachinePage = MachinePages.MachiningDb Case MachinePages.ToolsDb ToolsDBBtn.IsChecked = True MachiningDBBtn.IsChecked = False Case MachinePages.MachiningDb MachiningDBBtn.IsChecked = True Case MachinePages.MachineCN MachiningDBBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_MachineCNPageUC) MachinePageGrid.Children.Add(m_MachiningDbPageUC) m_ActiveMachinePage = MachinePages.MachiningDb End Select End Sub Private Sub TestingPageBtn_Checked(sender As Object, e As RoutedEventArgs) Handles TestingPageBtn.Checked Select Case m_ActiveMachinePage Case MachinePages.Alarms AlarmsBtn.IsChecked = False TestingPageBtn.IsChecked = True MachinePageGrid.Children.Remove(m_AlarmsPageUC) MachinePageGrid.Children.Add(m_MachineCNPageUC) m_ActiveMachinePage = MachinePages.MachineCN Case MachinePages.ToolsDb ToolsDBBtn.IsChecked = True TestingPageBtn.IsChecked = False Case MachinePages.MachiningDb TestingPageBtn.IsChecked = False Case MachinePages.MachineCN TestingPageBtn.IsChecked = True End Select End Sub Private Sub MachinePage_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded Select Case m_ActiveMachinePage Case MachinePages.Alarms If Not IsNothing(m_AlarmsPageUC.m_SetUpPage) And MachinePageGrid.Children.Contains(m_AlarmsPageUC.m_SetUpPage) Then MachinePageGrid.Children.Remove(m_AlarmsPageUC.m_SetUpPage) MachinePageGrid.Children.Add(m_AlarmsPageUC) End If Case MachinePages.ToolsDb AlarmsBtn.IsChecked = True ToolsDBBtn.IsChecked = False MachinePageGrid.Children.Remove(m_ToolsDbPageUC) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms Case MachinePages.MachiningDb AlarmsBtn.IsChecked = True MachiningDBBtn.IsChecked = False MachinePageGrid.Children.Remove(m_MachiningDbPageUC) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms Case MachinePages.MachineCN AlarmsBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_MachineCNPageUC) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms End Select End Sub End Class