/// <summary> /// Отображение данных о выбранном пользователе или разделе /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MainTree_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs <object> e) { if (((TreeViewItem)e.NewValue).Tag is Department) // если выбран департамент { // дата гриду присваиваем источик dgWorkers.ItemsSource = (((TreeViewItem)e.NewValue).Tag as Department).workers; // отображаем справа информацию о директоре txtDir.Text = (((TreeViewItem)e.NewValue).Tag as Department).GetDirector(); // отображаем грид и скрываем инфо о работнике viewWorker.Visibility = Visibility.Hidden; dgWorkers.Visibility = Visibility.Visible; } else // если работник { txtDir.Text = string.Empty; TreeViewItem item = (TreeViewItem)e.NewValue; //показываем лист и скрываем грид dgWorkers.Visibility = Visibility.Hidden; viewWorker.Visibility = Visibility.Visible; if (item.Tag is Employee) // отображение штатного { Employee wrk = item.Tag as Employee; viewWorker.Items.Clear(); viewWorker.Items.Add(new TextBlock() { Text = $"ID Работника {wrk.WorkerID}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Имя {wrk.FirstName}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Фамилия {wrk.LastName}" }); viewWorker.Items.Add(new TextBlock() { Text = $"ЗП {wrk.Salary}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Отработано {wrk.HoursWorked}" }); } else if (item.Tag is Intern) // оторажение интерна { Intern wrk = item.Tag as Intern; viewWorker.Items.Clear(); viewWorker.Items.Add(new TextBlock() { Text = $"ID Работника {wrk.WorkerID}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Имя {wrk.FirstName}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Фамилия {wrk.LastName}" }); viewWorker.Items.Add(new TextBlock() { Text = $"ЗП {wrk.Salary}" }); viewWorker.Items.Add(new TextBlock() { Text = $"ID наставника {wrk.Mentor}" }); } else // отображение директора { Director wrk = item.Tag as Director; viewWorker.Items.Clear(); viewWorker.Items.Add(new TextBlock() { Text = $"ID Директора {wrk.WorkerID}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Имя {wrk.FirstName}" }); viewWorker.Items.Add(new TextBlock() { Text = $"Фамилия {wrk.LastName}" }); viewWorker.Items.Add(new TextBlock() { Text = $"ЗП {wrk.Salary}" }); } } }