using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using Avalonia; using Avalonia.Controls; using Avalonia.Interactivity; using Avalonia.Markup.Xaml; using kursovaya.Models; namespace kursovaya; public partial class TeachersFromAdminWindow : Window { public List dataSourceTeachers = new List(); public ObservableCollection Teachers = new ObservableCollection(); List _addedTeachers = new List(); public TeachersFromAdminWindow() { InitializeComponent(); var ctx = new DatabaseContext(); dataSourceTeachers = ctx.Teachers.ToList(); DisplayTeachers(); FlatGrid.ItemsSource = Teachers; } private void ButtonBack_OnClick(object? sender, RoutedEventArgs e) { if (_addedTeachers == null || _addedTeachers.Count == 0) { Close(true); } else { Close(false); } } public void DisplayTeachers() { var ctx = new DatabaseContext(); var temp = dataSourceTeachers; Teachers.Clear(); foreach (var teacher in temp) { Teachers.Add(teacher); } } private async void ButtonAddTeacher_OnClick(object? sender, RoutedEventArgs e) { AddTeacher addTeacher = new AddTeacher(); _addedTeachers = await addTeacher.ShowDialog>(this); if (_addedTeachers == null || _addedTeachers.Count == 0) { return; } dataSourceTeachers.AddRange(_addedTeachers); DisplayTeachers(); } }