128 lines
3.7 KiB
C#
128 lines
3.7 KiB
C#
![]() |
using Avalonia.Controls;
|
||
|
using Demo2.Models;
|
||
|
using System;
|
||
|
using System.Linq;
|
||
|
|
||
|
namespace Demo2
|
||
|
{
|
||
|
public partial class MainWindow : Window
|
||
|
{
|
||
|
int page = 0;
|
||
|
int shownAmount;
|
||
|
int f = 0;
|
||
|
int s = 0;
|
||
|
string sr = "";
|
||
|
public MainWindow()
|
||
|
{
|
||
|
InitializeComponent();
|
||
|
filtr.ItemsSource = PublicActions.Genders;
|
||
|
Amount.SelectedIndex = 0;
|
||
|
filtr.SelectedIndex = 0;
|
||
|
sort.SelectedIndex = 0;
|
||
|
}
|
||
|
public void ChangePage()
|
||
|
{
|
||
|
ClientsList.ItemsSource = PublicActions.Clients.ToList().Skip(page * shownAmount).Take(shownAmount);
|
||
|
show.Text = PublicActions.ShowmClientAmount;
|
||
|
if (page == 0)
|
||
|
{
|
||
|
Back.IsEnabled = false;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
Back.IsEnabled = true;
|
||
|
}
|
||
|
if ((page + 1) * shownAmount > PublicActions.Clients.Count - 1)
|
||
|
{
|
||
|
Forward.IsEnabled = false;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
Forward.IsEnabled = true;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
private void PageButton(object? sender, Avalonia.Interactivity.RoutedEventArgs e)
|
||
|
{
|
||
|
Button button = sender as Button;
|
||
|
if (button.Name == "Back")
|
||
|
{
|
||
|
page--;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
page++;
|
||
|
}
|
||
|
ChangePage();
|
||
|
}
|
||
|
|
||
|
private void ShownAmounChanged(object? sender, Avalonia.Controls.SelectionChangedEventArgs e)
|
||
|
{
|
||
|
switch ((sender as ComboBox).SelectedIndex)
|
||
|
{
|
||
|
case 0: shownAmount = 10; break;
|
||
|
case 1: shownAmount = 50; break;
|
||
|
case 2: shownAmount = 200; break;
|
||
|
}
|
||
|
page = 0;
|
||
|
ChangePage();
|
||
|
}
|
||
|
|
||
|
private void SFSchanged(object? sender, Avalonia.Controls.SelectionChangedEventArgs e)
|
||
|
{
|
||
|
if ((sender as ComboBox).Name == "filtr")
|
||
|
{
|
||
|
f = (sender as ComboBox).SelectedIndex;
|
||
|
}
|
||
|
else if ((sender as ComboBox).Name == "sort")
|
||
|
{
|
||
|
s = (sender as ComboBox).SelectedIndex;
|
||
|
}
|
||
|
page = 0;
|
||
|
PublicActions.ClientsActions(s, f, sr);
|
||
|
ChangePage();
|
||
|
}
|
||
|
|
||
|
private void TextBox_TextChanged(object? sender, Avalonia.Controls.TextChangedEventArgs e)
|
||
|
{
|
||
|
sr = (sender as TextBox).Text;
|
||
|
page = 0;
|
||
|
PublicActions.ClientsActions(s, f, sr);
|
||
|
ChangePage();
|
||
|
}
|
||
|
|
||
|
private void Button_Click_1(object? sender, Avalonia.Interactivity.RoutedEventArgs e)
|
||
|
{
|
||
|
new EditWindow().Show();
|
||
|
this.Close();
|
||
|
}
|
||
|
|
||
|
private void Border_DoubleTapped(object? sender, Avalonia.Input.TappedEventArgs e)
|
||
|
{
|
||
|
new EditWindow(Int32.Parse((sender as Border).Tag.ToString())).Show();
|
||
|
this.Close();
|
||
|
}
|
||
|
|
||
|
private void ListBox_SelectionChanged_1(object? sender, Avalonia.Controls.SelectionChangedEventArgs e)
|
||
|
{
|
||
|
if (ClientsList.SelectedIndex != -1)
|
||
|
{
|
||
|
DeleteButton.IsVisible = true;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
DeleteButton.IsVisible = false;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
private void Delete(object? sender, Avalonia.Interactivity.RoutedEventArgs e)
|
||
|
{
|
||
|
PublicActions.PublicContext.Clients.Remove(ClientsList.SelectedItem as Client);
|
||
|
PublicActions.PublicContext.SaveChanges();
|
||
|
page = 0;
|
||
|
f = 0;
|
||
|
s = 0;
|
||
|
PublicActions.ClientsActions(s, f, sr);
|
||
|
}
|
||
|
}
|
||
|
}
|