private void DeleteTester_Click(object sender, RoutedEventArgs e)
 {
     winCondition = "Delete";
     removeWarnings();
     try
     {
         Save.Content                = "Delete";
         TesterForPL                 = new Tester();
         TesterGrid.Visibility       = Visibility.Visible;
         TesterComboBox.Visibility   = Visibility.Visible;
         TesterComboBox.SelectedItem = null;
         TesterGrid.DataContext      = TesterForPL;
         closeAlmostAll();
         IdErrors.Text   = "First Select ID";
         TesterListForPL = bl.GetListOfTesters();
         if (TesterListForPL == null)
         {
             throw new Exception("There are no testers to delete.");
         }
         if (TesterListForPL.Count == 0)
         {
             throw new Exception("There are no testers to delete.");
         }
         TesterComboBox.ItemsSource = bl.GetListOfTesters().Select(x => x.TesterId);
     }
     catch (Exception exception)
     {
         MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
 public TestersWindow()
 {
     InitializeComponent();
     WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen;
     TesterGrid.Visibility = Visibility.Hidden;
     bl          = IBL_imp.Instance;
     TesterForPL = new Tester();
     this.TesterGrid.DataContext     = TesterForPL;
     this.TesterComboBox.DataContext = TesterListForPL;
     //Save.IsEnabled = false;
     //manage calendar
     dateOfBirthDatePicker.DisplayDateEnd   = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MinAgeOFTester);
     dateOfBirthDatePicker.DisplayDateStart = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MaxAgeOFTester);
     //enums
     this.testerGenderComboBox.ItemsSource = Enum.GetValues(typeof(BE.Gender));
     this.testercarComboBox.ItemsSource    = Enum.GetValues(typeof(BE.CarType));
     //for numbers only
     this.testerIdTextBox.PreviewTextInput           += TextBox_PreviewTextInputNumbers;
     this.phoneNumberTextBox.PreviewTextInput        += TextBox_PreviewTextInputNumbers;
     this.maxDistanceForTestTextBox.PreviewTextInput += TextBox_PreviewTextInputNumbers;
     this.yearsOfExperienceTextBox.PreviewTextInput  += TextBox_PreviewTextInputNumbers;
     this.maxTestsInaWeekTextBox.PreviewTextInput    += TextBox_PreviewTextInputNumbers;
     //for letters only
     this.sirnameTextBox.PreviewTextInput   += TextBox_PreviewTextInputLetters;
     this.firstNameTextBox.PreviewTextInput += TextBox_PreviewTextInputLetters;
     this.City.PreviewTextInput             += TextBox_PreviewTextInputLetters;
 }
        private void UpdateTester_Click(object sender, RoutedEventArgs e)
        {
            winCondition = "update";
            try
            {
                TesterForPL = new Tester();
                TesterComboBox.SelectedItem = null;
                closeAlmostAll();
                TesterGrid.DataContext     = TesterForPL;
                IdErrors.Text              = "First Select ID";
                IdErrors.Foreground        = Brushes.DarkBlue;
                TesterListForPL            = bl.GetListOfTesters();
                TesterComboBox.ItemsSource = bl.GetListOfTesters().Select(x => x.TesterId);
                if (TesterListForPL.Count == 0)
                {
                    throw new Exception("There are no Testers to update.");
                }
                TesterGrid.Visibility = Visibility.Visible;
                TesterGrid.IsEnabled  = true;

                Save.Content = "Check";
                TesterComboBox.Visibility  = Visibility.Visible;
                testerIdTextBox.Visibility = Visibility.Hidden;
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
示例#4
0
        public void updateTester(BE.Tester tester)
        {
            bool   tester_exists = false;
            Tester t             = new Tester();
            bool   canchange     = false;

            foreach (Tester item in getAllTesters())
            {
                if (item.id == tester.id)
                {
                    tester_exists = true;
                    if (item.BirthDate == tester.BirthDate && item.TesterGender == tester.TesterGender)
                    {
                        canchange = true;
                    }
                }
            }
            if (!tester_exists)
            {
                throw new Exception("tried updating a tester not in database");
            }
            if (canchange)
            {
                d.updateTester(tester);
            }
            else
            {
                throw new Exception("can't change birth date & gender");
            }
        }
示例#5
0
 public AddTester()
 {
     InitializeComponent();
     tester = new BE.Tester();
     this.gridAddTester.DataContext = tester;
     bl = BL.FactoryBL.getBL();
     this.comboBox1.ItemsSource = Enum.GetValues(typeof(BE.gender));
 }
        public SortedSet <DateTime> avalibleDateTimes(Test test)
        {
            BE.Trainee trainee = IDAL.GetTraineeCopy(test.TraineeID);
            var        result  = new SortedSet <DateTime>();
            DateTime   time    = DateTime.Now.AddDays(2);

            time = time.AddMinutes(120 - time.Minute);
            while (time <= DateTime.Now.AddDays(BE.Configuration.AllowToAddTest_DaysInAdvance))
            {
                try
                {
                    test.Time = time;

                    BE.Test LastPreviusTest = null, FirstNextTest = null;
                    foreach (var item in IDAL.GetAllTests(t => t.TraineeID == test.TraineeID))
                    {
                        if (item.Time < test.Time && (LastPreviusTest == null || LastPreviusTest.Time < item.Time))
                        {
                            LastPreviusTest = item;
                        }
                        else if (item.Time >= test.Time && (FirstNextTest == null || LastPreviusTest.Time < item.Time))
                        {
                            FirstNextTest = item;
                        }
                    }
                    if (LastPreviusTest != null && (test.Time - LastPreviusTest.Time).Days < BE.Configuration.MinimumDaysBetweenTests ||
                        FirstNextTest != null && (FirstNextTest.Time - test.Time).Days < BE.Configuration.MinimumDaysBetweenTests)
                    {
                        throw new Exception("לתלמיד זה קיים מבחן בהפרש של פחות משבעה ימים.");
                    }
                    if (test.Time != NextWorkTime(test.Time))
                    {
                        throw new Exception("מועד הטסט מחוץ לשעות העבודה. \nשעות העבודה בימי השבוע הם: " + BE.Configuration.WorkStartHour + " עד " + BE.Configuration.WorkEndHour);
                    }

                    BE.Tester tester = (from item in GetAllTesters(test.Time)
                                        where item.Vehicle == trainee.Vehicle &&
                                        BE.Tools.Maps_DrivingDistance(item.Address, test.Address) < item.MaxDistanceInMeters &&
                                        (!trainee.OnlyMyGender || item.Gender == trainee.Gender) &&
                                        item.GearBoxType == trainee.GearBoxType &&
                                        NumOfTestsInWeek(item, test.Time) < item.MaxTestsInWeek
                                        select item).FirstOrDefault();
                    if (tester == null)
                    {
                        throw new Exception("הזמן המבוקש תפוס");
                    }
                    result.Add(time);
                    time = time.AddDays(1);
                    time = time.AddHours(-time.Hour + BE.Configuration.WorkStartHour);
                }
                catch (Exception)
                {
                    time = time.AddMinutes(15);
                }
                time = NextWorkTime(time);
            }
            return(result);
        }
 /// <summary>
 /// Remove Tester from the DataBase
 /// </summary>
 /// <param name="ID">the ID fo Tester to remove</param>
 public void RemoveTester(string ID)
 {
     BE.Tester tester = IDAL.GetTesterCopy(ID);
     if (tester == null)
     {
         throw new KeyNotFoundException("לא נמצא בוחן שמספרו " + ID);
     }
     IDAL.RemoveTester(ID);
 }
 /// <summary>
 /// Add Tester
 /// </summary>
 /// <param name="tester"></param>
 public void AddTester(BE.Tester tester)
 {
     BE.Tester ExsistTester = GetTester(tester.ID);
     if (ExsistTester != null)
     {
         throw new Exception("הבוחן כבר קיים במערכת");
     }
     testers.Add(tester.Clone());
     SaveToXML <List <Tester> >(testers, testersPath);
 }
 /// <summary>
 /// Remove Tester
 /// </summary>
 /// <param name="ID"></param>
 public void RemoveTester(string ID)
 {
     BE.Tester tester = GetTester(ID);
     if (tester == null)
     {
         throw new KeyNotFoundException("לא נמצא בוחן שמספרו " + ID);
     }
     testers.Remove(tester);
     SaveToXML <List <Tester> >(testers, testersPath);
 }
示例#10
0
 public UpdateTester()
 {
     InitializeComponent();
     tester           = new BE.Tester();
     this.DataContext = tester;
     bl = BL.FactoryBL.getBL();
     IDComboBox.ItemsSource = from item in bl.getAllTester()
                              select item.TesterID;
     //Gender.ItemsSource = Enum.GetValues(typeof(BE.Gender));
 }
        /// <summary>
        /// Update Tester
        /// </summary>
        /// <param name="tester"></param>
        public void UpdateTester(BE.Tester tester)
        {
            int indexTester = testers.FindIndex(t => t.ID == tester.ID);

            if (indexTester == -1)
            {
                throw new KeyNotFoundException("לא נמצא בוחן שמספרו " + tester.ID);
            }
            testers[indexTester] = tester.Clone();
            SaveToXML <List <Tester> >(testers, testersPath);
        }
        public MainWindow()
        {
            InitializeComponent();

            bl = BL.factoryBL.getBL();

            currentTesters  = bl.testersList();
            currentTrainees = bl.traineesList();

            myTester  = new BE.Tester();
            myTrainee = new BE.Trainee();
        }
示例#13
0
 private void button_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         BL.BL_imp.addTester(Tester);
         MessageBox.Show("the tester \"" + Tester.id + "\" added to the list", "");
         var Window = new BE.Tester();
         this.gridAddBranch.DataContext = Window;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
示例#14
0
 private void Add_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         bl.addTester(tester);
         MessageBox.Show("the tester " + tester.FirstName + " was added", "");
         tester = new BE.Tester();
         this.gridAddTester.DataContext = tester;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
 private void AddTester_Click(object sender, RoutedEventArgs e)
 {
     winCondition = "add";
     TesterComboBox.ItemsSource = bl.GetListOfTesters().Select(x => x.TesterId);
     TesterForPL = new Tester();
     openAll();
     TesterGrid.DataContext     = TesterForPL;
     IdErrors.Text              = "";
     testerIdTextBox.Visibility = Visibility.Visible;
     TesterGrid.Visibility      = Visibility.Visible;
     TesterComboBox.Visibility  = Visibility.Hidden;
     TesterGrid.IsEnabled       = true;
     Save.Content = "Check";
 }
示例#16
0
 public AddTester(Tester testerToUp)//update window sending an existing tester
 {
     InitializeComponent();
     tester = testerToUp;
     this.EnterButton.Content = "update";
     this.IDTBox.IsReadOnly   = true;
     init(testerToUp);
     //set the schedule with the old values
     foreach (var item in SchedGrid.Children.OfType <CheckBox>())
     {
         int row    = Grid.GetRow(item);
         int column = Grid.GetColumn(item);
         item.IsChecked = tester.WeeklySchedule.weeklySchedule[column - 1][row - 1];
     }
 }
 /// <summary>
 /// Update relevant properties of Tester
 /// </summary>
 /// <param name="tester"></param>
 public void UpdateTester(Tester tester)
 {
     BE.Tester ExistTester = IDAL.GetTesterCopy(tester.ID);
     if (ExistTester == null)
     {
         throw new KeyNotFoundException("לא נמצא בוחן שמספרו " + tester.ID);
     }
     if (ExistTester.FirstName != tester.FirstName || ExistTester.LastName != tester.LastName ||
         ExistTester.BirthDate != tester.BirthDate || ExistTester.Gender != tester.Gender ||
         ExistTester.Experience != tester.Experience)
     {
         throw new KeyNotFoundException("לא ניתן לשנות מידע בסיסי של בוחן");
     }
     IDAL.UpdateTester(tester);
 }
示例#18
0
        private void button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                bl.addTester(tester);

                MessageBox.Show("the Tester \"" + tester.id + "\" added to the list", "");
                tester = new BE.Tester();
                this.gridAddTester.DataContext = tester;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 /// <summary>
 /// add Tester to the DataBase
 /// </summary>
 /// <param name="tester"></param>
 public void AddTester(BE.Tester tester)
 {
     if (tester.Address == null || tester.Address == "" || tester.BirthDate == default(DateTime) ||
         tester.FirstName == null || tester.FirstName == "" ||
         tester.ID == null || tester.ID == "" || tester.LastName == null || tester.LastName == "" ||
         tester.MailAddress == null || tester.MailAddress == "" ||
         tester.PhoneNumber == null || tester.PhoneNumber == "" || tester.WorkHours == null)
     {
         throw new Exception("חובה למלא את כל הפרטים");
     }
     if (DateTime.Now.Year - tester.BirthDate.Year < BE.Configuration.MinimumTesterAge)
     {
         throw new Exception("אין אפשרות להוסיף בוחן מתחת לגיל 40");
     }
     IDAL.AddTester(tester);
 }
 private void AddTester_Click(object sender, RoutedEventArgs e)
 {
     winCondition = "Add";
     removeWarnings();
     //TesterComboBox.ItemsSource = bl.GetListOfTesters().Select(x => x.TesterId);
     TesterForPL = new Tester();
     openAll();
     TesterGrid.DataContext                 = TesterForPL;
     dateOfBirthDatePicker.SelectedDate     = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MaxAgeOFTester);
     dateOfBirthDatePicker.DisplayDateEnd   = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MinAgeOFTester);
     dateOfBirthDatePicker.DisplayDateStart = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MaxAgeOFTester);
     IdErrors.Text = "";
     testerIdTextBox.Visibility = Visibility.Visible;
     TesterGrid.Visibility      = Visibility.Visible;
     TesterComboBox.Visibility  = Visibility.Hidden;
     TesterGrid.IsEnabled       = true;
     Save.Content = "Check";
 }
示例#21
0
        public void updateTester(BE.Tester tester)
        {
            testers = LoadFromXML <List <Tester> >(testerspath);
            Tester t = new Tester();

            foreach (BE.Tester item in testers)
            {
                if (item.id == tester.id)
                {
                    t = item;

                    break;
                }
            }
            testers.Remove(t);
            testers.Add(tester);
            SaveToXML(testers, testerspath);
        }
示例#22
0
 XElement convertTester(BE.Tester tester)
 {
     return(new XElement("tester", new XElement("ID", tester.ID),
                         new XElement("Name", new XElement("FirstName", tester.Name.FirstName)
                                      , new XElement("LastName", tester.Name.LastName)),
                         new XElement("DayOfBirth", tester.DayOfBirth.ToString()),
                         new XElement("Gender", tester.Gender.ToString()),
                         new XElement("Address", new XElement("City", tester.Address.City),
                                      new XElement("StreetName", tester.Address.StreetName),
                                      new XElement("Number", tester.Address.Number.ToString())),
                         new XElement("PhoneNumber", tester.phoneNumber),
                         new XElement("Experience", tester.Experience),
                         new XElement("MaxTestWeekly", tester.MaxTestWeekly),
                         new XElement("MaxDistance", tester.MaxDistance),
                         new XElement("Expertise", new XElement("carType", tester.Expertise.carType.ToString()),
                                      new XElement("gearType", tester.Expertise.gearType.ToString())),
                         new XElement(converterSchedule(tester.Luz))
                         ));
 }
        public SortedSet <DateTime> AvalibleTimesInDay(Test test)
        {
            BE.Trainee trainee  = IDAL.GetTraineeCopy(test.TraineeID);
            var        result   = new SortedSet <DateTime>();
            DateTime   time     = test.Time;
            DateTime   timeFlag = test.Time;

            timeFlag = timeFlag.AddHours(-timeFlag.Hour);
            time     = time.AddMinutes(120 - time.Minute);
            while (time <= timeFlag + new TimeSpan(1, 0, 0))
            {
                try
                {
                    test.Time = time;
                    if (test.Time != NextWorkTime(test.Time))
                    {
                        throw new Exception("מועד הטסט מחוץ לשעות העבודה. \nשעות העבודה בימי השבוע הם: " + BE.Configuration.WorkStartHour + " עד " + BE.Configuration.WorkEndHour);
                    }

                    BE.Tester tester = (from item in GetAllTesters(test.Time)
                                        where item.Vehicle == trainee.Vehicle &&
                                        BE.Tools.Maps_DrivingDistance(item.Address, test.Address) < item.MaxDistanceInMeters &&
                                        (!trainee.OnlyMyGender || item.Gender == trainee.Gender) &&
                                        item.GearBoxType == trainee.GearBoxType &&
                                        NumOfTestsInWeek(item, test.Time) < item.MaxTestsInWeek
                                        select item).FirstOrDefault();
                    if (tester == null)
                    {
                        throw new Exception("הזמן המבוקש תפוס");
                    }
                    result.Add(time);
                }
                catch (Exception)
                { }
                time = time.AddMinutes(15);
                time = NextWorkTime(time);
            }
            return(result);
        }
 private void UpdateTester_Click(object sender, RoutedEventArgs e)
 {
     winCondition = "Update";
     removeWarnings();
     try
     {
         TesterForPL = new Tester();
         TesterComboBox.SelectedItem = null;
         closeAlmostAll();
         TesterGrid.DataContext = TesterForPL;
         IdErrors.Text          = "First Select ID";
         IdErrors.Foreground    = Brushes.DarkBlue;
         TesterListForPL        = bl.GetListOfTesters();
         if (TesterListForPL == null)
         {
             throw new Exception("There are no Testers to update.");
         }
         if (TesterListForPL.Count == 0)
         {
             throw new Exception("There are no Testers to update.");
         }
         dateOfBirthDatePicker.DisplayDateEnd   = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MinAgeOFTester);
         dateOfBirthDatePicker.DisplayDateStart = DateTime.Now.AddYears(-1 * (int)BE.Configuration.MaxAgeOFTester);
         TesterComboBox.ItemsSource             = bl.GetListOfTesters().Select(x => x.TesterId);
         TesterGrid.Visibility      = Visibility.Visible;
         TesterGrid.IsEnabled       = true;
         Save.Content               = "Check";
         TesterComboBox.Visibility  = Visibility.Visible;
         testerIdTextBox.Visibility = Visibility.Hidden;
     }
     catch (Exception exception)
     {
         if (exception.Message != "Object reference not set to an instance of an object.")
         {
             MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
         }
     }
 }
        private void TesterComboBox_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (TesterComboBox.SelectedIndex != -1)
            {
                IdErrors.Text = "";
                if (Save.Content == "Check")
                {
                    openAll();
                }
                string id = (string)TesterComboBox.SelectedItem;
                TesterForPL = bl.GetListOfTesters().FirstOrDefault(a => a.TesterId == id);
                this.TesterGrid.DataContext = TesterForPL;

                testerGenderComboBox.SelectedItem = TesterForPL.TesterGender;
                if (TesterForPL.TesterGender == Gender.Male)
                {
                    testerGenderComboBox.SelectedIndex = 0;
                }
                else if (TesterForPL.TesterGender == Gender.Female)
                {
                    testerGenderComboBox.SelectedIndex = 1;
                }
                else
                {
                    testerGenderComboBox.SelectedIndex = 2;
                }
                testercarComboBox.SelectedItem = TesterForPL.Testercar;
                City.Text          = TesterForPL.TesterAdress.City;
                Street.Text        = TesterForPL.TesterAdress.Street;
                BuidingNumber.Text = TesterForPL.TesterAdress.BuildingNumber;

                //schedual
                TesterForPL.getSchedual(SundayArr, MondayArr, TuesdayArr, WednesdayArr, ThursdayArr);
                showDailyHours(SundayArr);//working hours in sunday

//this.TesterGrid.DataContext = TesterForPL;
            }
        }
        /// <summary>
        /// UpdateTester ctor
        /// </summary>
        public UpdateTester()
        {
            try
            {
                tester = ((MainWindow)Application.Current.MainWindow).selectedTesters[0];
            }
            catch (Exception)
            {
                MessageBox.Show("לא נבחר בוחן");
                this.Close();
            }
            InitializeComponent();
            this.gearBoxTypeComboBox.ItemsSource = Enum.GetValues(typeof(BE.GearBoxType));
            this.genderComboBox.ItemsSource      = Enum.GetValues(typeof(BE.Gender));
            this.vehicleComboBox.ItemsSource     = Enum.GetValues(typeof(BE.Vehicle));
            this.DataContext = tester;
            this.WorkHoursGrid.DataContext = this;
            this.DayComboBox.ItemsSource   = Enum.GetValues(typeof(BE.WeekDays));
            List <string> worsHours = (from item in tester.WorkHours select item.ToString()).ToList();

            this.WorkHoursDataGrid.ItemsSource = (from item in tester.WorkHours select new { OnetimePeriod = item.ToString() });
            this.addressPicker.Address         = tester.Address;
        }
示例#27
0
        private void init(BE.Tester tester)
        {
            this.TextBoxGrid.DataContext = tester;

            GenderCBox.ItemsSource     = Enum.GetValues(typeof(Gender));
            SpecialityCBox.ItemsSource = Enum.GetValues(typeof(Vehicle));
            CityCBox.ItemsSource       = Enum.GetValues(typeof(Cities));
            //tester experience
            for (int i = 0; i < Configuration.MaxTesterAge - Configuration.minTesterAge; i++)
            {
                ExpCBox.Items.Add(i);
            }
            //can take up to 30 tests; (5 days * 6 hours)
            for (int i = 0; i <= 30; i++)
            {
                MaxTestsCBox.Items.Add(i);
            }
            //distance
            for (int i = 0; i < 150; i++)
            {
                MaxDistanceCBox.Items.Add(i);
            }
        }
        private void TesterComboBox_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            IdErrors.Text = "";
            if (Save.Content == "Check")
            {
                openAll();
            }

            string id = (string)TesterComboBox.SelectedItem;

            TesterForPL = bl.GetListOfTesters().FirstOrDefault(a => a.TesterId == id);
            {                               //schedual
                hoursFromSchedualArr = TesterForPL.getSchedual();
                for (int i = 0; i < 6; i++) //put selections hour for sunday
                {
                    if (hoursFromSchedualArr[i, 0])
                    {
                        schedualListBox.SelectedIndex = i;
                    }
                }
            }
            this.TesterGrid.DataContext = TesterForPL;
        }
示例#29
0
        public object findById(int num)//return the object(trianee/ tester/ test) according to id/code of test
        {
            BE.Tester tester = getTestersList().Find(x => x.ID == num);
            if (tester != null)
            {
                return(tester);
            }
            BE.Trainee trainee = getTraineeList().Find(x => x.ID == num);
            if (trainee != null)
            {
                return(trainee);
            }
            BE.Test test = getTestsList().Find(x => x.numOfTest == num);
            if (test != null)
            {
                return(test);
            }

            else
            {
                throw new Exception("No such Id in our database.");
            }
        }
示例#30
0
 private void OkButton_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         BE.Tester tester = My_bl.GetAllTesters().Find(x => x.Id == TesterIDTextBox.Text);
         if (tester == null)
         {
             throw new Exception("Tester " + TesterIDTextBox.Text + "not found!!");
         }
         if (tester.Password == YourPasswordBox.Password)
         {
             List <Test> myTests = My_bl.GetAllTests().FindAll(x => x.TesterId == TesterIDTextBox.Text && x.TestDate <= DateTime.Now &&
                                                               x.ISUpdated == false);
             if (myTests.Any() == false)
             {
                 throw new Exception("You don't have any tests to update");
             }
             ListIndex        = 0;
             StudentIDTB.Text = myTests[0].TraineeId;
             Trainee trainee = My_bl.GetAllTrainees().Find(x => x.Id == StudentIDTB.Text);
             studentDetails.Content   = trainee.Name + " " + trainee.FamilyName;
             TestDateDP.SelectedDate  = myTests[ListIndex].TestDate;
             HourDispalyLabel.Content = "Hour:" + myTests[ListIndex].TestDate.Hour + ":00";
             TestsNumberTB.Text       = myTests[ListIndex].TestNumber;
             ActiveFildes();
         }
         else
         {
             throw new Exception("Worng password!!");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "ERROR");
     }
 }