kursovaya/TeachersFromAdminWindow.axaml.cs

63 lines
1.6 KiB
C#
Raw Normal View History

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<Teacher> dataSourceTeachers = new List<Teacher>();
public ObservableCollection<Teacher> Teachers = new ObservableCollection<Teacher>();
List<Teacher> _addedTeachers = new List<Teacher>();
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<List<Teacher>>(this);
if (_addedTeachers == null || _addedTeachers.Count == 0)
{
return;
}
dataSourceTeachers.AddRange(_addedTeachers);
DisplayTeachers();
}
}