MainViewControls.axaml.cs
1 using Avalonia; 2 using Avalonia.Controls; 3 using Avalonia.Input; 4 using Avalonia.Interactivity; 5 using Ryujinx.Ava.Common; 6 using Ryujinx.Ava.UI.ViewModels; 7 using Ryujinx.Ava.UI.Windows; 8 using System; 9 10 namespace Ryujinx.Ava.UI.Views.Main 11 { 12 public partial class MainViewControls : UserControl 13 { 14 public MainWindowViewModel ViewModel; 15 16 public MainViewControls() 17 { 18 InitializeComponent(); 19 } 20 21 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e) 22 { 23 base.OnAttachedToVisualTree(e); 24 25 if (VisualRoot is MainWindow window) 26 { 27 ViewModel = window.ViewModel; 28 } 29 30 DataContext = ViewModel; 31 } 32 33 public void Sort_Checked(object sender, RoutedEventArgs args) 34 { 35 if (sender is RadioButton button) 36 { 37 ViewModel.Sort(Enum.Parse<ApplicationSort>(button.Tag.ToString())); 38 } 39 } 40 41 public void Order_Checked(object sender, RoutedEventArgs args) 42 { 43 if (sender is RadioButton button) 44 { 45 ViewModel.Sort(button.Tag.ToString() != "Descending"); 46 } 47 } 48 49 private void SearchBox_OnKeyUp(object sender, KeyEventArgs e) 50 { 51 ViewModel.SearchText = SearchBox.Text; 52 } 53 } 54 }