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_TestingPage As TestingPageUC ' Riferimento alla pagina correntemente attiva Friend m_ActiveMachinePage As MachinePages Enum MachinePages Alarms ToolsDb MachiningDb Testing End Enum Private Sub MachinePage_Initialized(sender As Object, e As EventArgs) 'Creazione delle Page UserControl m_AlarmsPageUC = New AlarmsPageUC m_ToolsDbPageUC = New ToolsDbPageUC m_MachiningDbPageUC = New MachiningDbPageUC m_TestingPage = New TestingPageUC '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_TestingPage.SetValue(Grid.RowProperty, 1) 'Inizializzazione della pagina di apertura all'apertura della pagina MachinePage MachinePageGrid.Children.Add(m_AlarmsPageUC) AlarmsBtn.IsChecked = True m_ActiveMachinePage = MachinePages.Alarms AlarmsBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 5) ToolsDBBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 6) MachiningDBBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 7) TestingPageBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 8) End Sub Private Sub MachinePage_Loaded(sender As Object, e As RoutedEventArgs) Dim Test As Integer = GetPrivateProfileInt(S_GENERAL, K_TESTINGPAGE, 0, m_MainWindow.GetIniFile()) If Test = 1 Then TestingPageBtn.Visibility = Windows.Visibility.Visible Else TestingPageBtn.Visibility = Windows.Visibility.Hidden 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.Testing AlarmsBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_TestingPage) 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.Testing ToolsDBBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_TestingPage) 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.Testing MachiningDBBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_TestingPage) 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_TestingPage) m_ActiveMachinePage = MachinePages.Testing Case MachinePages.ToolsDb ToolsDBBtn.IsChecked = True TestingPageBtn.IsChecked = False Case MachinePages.MachiningDb TestingPageBtn.IsChecked = False Case MachinePages.Testing TestingPageBtn.IsChecked = True End Select End Sub Private Sub MachinePage_Unloaded(sender As Object, e As RoutedEventArgs) 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.Testing AlarmsBtn.IsChecked = True TestingPageBtn.IsChecked = False MachinePageGrid.Children.Remove(m_TestingPage) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms End Select End Sub End Class