ContextMenuPage.xaml.cs 831 B

123456789101112131415161718192021222324252627282930313233
  1. using System;
  2. using Avalonia.Controls;
  3. using Avalonia.Markup.Xaml;
  4. using ControlCatalog.ViewModels;
  5. namespace ControlCatalog.Pages
  6. {
  7. public class ContextMenuPage : UserControl
  8. {
  9. public ContextMenuPage()
  10. {
  11. this.InitializeComponent();
  12. DataContext = new ContextMenuPageViewModel();
  13. }
  14. private ContextMenuPageViewModel _model;
  15. protected override void OnDataContextChanged(EventArgs e)
  16. {
  17. if (_model != null)
  18. _model.View = null;
  19. _model = DataContext as ContextMenuPageViewModel;
  20. if (_model != null)
  21. _model.View = this;
  22. base.OnDataContextChanged(e);
  23. }
  24. private void InitializeComponent()
  25. {
  26. AvaloniaXamlLoader.Load(this);
  27. }
  28. }
  29. }