Files
DE70/.svn/pristine/0c/0c61b7d74f9781eafb66b336fa071eb41638ca3f.svn-base
T
2024-09-02 10:03:23 +07:00

147 lines
4.5 KiB
Plaintext

using System;
using System.Collections.Generic;
using System.IO.Ports;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Channels;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Xml.Serialization;
using System.Windows.Threading;
using System.Diagnostics;
namespace SafeBagDE70
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
///
//public class CountSession
//{
// public int[] QuantityDenomi { get; set; }
// public int[] SumDenomi { get; set; }
//}
public partial class MainWindow : HandyControl.Controls.Window
{
private WelcomeUC _welcomeUC;
private DepositUC _depositUC;
private CollectionUC _collectionUC;
private InformationUC _informationUC;
private ErrorUC _errorUC;
private UserControl _currentUC;
private UserControl _prevUC;
private TimeoutUC _timeoutUC;
private object objLock = new object();
public MainWindow()
{
InitializeComponent();
Loaded += MainWindow_Loaded;
}
private void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
AppData.Init();
if (_welcomeUC == null) _welcomeUC = new WelcomeUC();
if (_collectionUC == null) _collectionUC = new CollectionUC();
if (_informationUC == null) _informationUC = new InformationUC();
if (_errorUC == null) _errorUC = new ErrorUC();
if (_depositUC == null) _depositUC = new DepositUC();
if (_timeoutUC == null) _timeoutUC = new TimeoutUC();
gridMain.Children.Add(_welcomeUC);
gridMain.Children.Add(_depositUC);
gridMain.Children.Add(_collectionUC);
gridMain.Children.Add(_informationUC);
gridMain.Children.Add(_errorUC);
gridMain.Children.Add(_timeoutUC);
ShowWelcomeScreen();
}
public void HideAll()
{
lock(objLock)
{
foreach (var item in gridMain.Children)
{
if (item != null)
(item as UserControl).Visibility = Visibility.Hidden;
}
_collectionUC.Visibility = Visibility.Hidden;
_informationUC.Visibility = Visibility.Hidden;
_errorUC.Visibility = Visibility.Hidden;
_depositUC.Visibility = Visibility.Hidden;
_welcomeUC.Visibility = Visibility.Hidden;
}
}
public void ShowInformationScreen(string strInfor)
{
_prevUC = _currentUC;
_currentUC = _informationUC;
HideAll();
_informationUC.Visibility = Visibility.Visible;
_informationUC.ShowInfor(strInfor);
}
public void ShowErrorScreen(string strError)
{
_prevUC = _currentUC;
_currentUC = _errorUC;
HideAll();
_errorUC.Visibility = Visibility.Visible;
_errorUC.ShowInfor(strError);
}
public void ShowWelcomeScreen()
{
_prevUC = _currentUC;
_currentUC = _welcomeUC;
HideAll();
_welcomeUC.Init();
_welcomeUC.Visibility = Visibility.Visible;
}
public void ShowDepositScreen()
{
_prevUC = _currentUC;
_currentUC = _depositUC;
HideAll();
_depositUC.Visibility = Visibility.Visible;
_depositUC.EndTransaction();
_depositUC.InitTransaction();
}
public void ShowCollectionScreen()
{
_prevUC = _currentUC;
_currentUC = _collectionUC;
HideAll();
_collectionUC.Init();
_collectionUC.Visibility = Visibility.Visible;
}
public void ShowTimeoutScreen()
{
_prevUC = _currentUC;
HideAll();
_timeoutUC.Visibility = Visibility.Visible;
}
public void BackScreen()
{
HideAll();
_prevUC.Visibility = Visibility.Visible;
_currentUC = _prevUC;
}
}
}