Files
MayShow/src/MayShow.Shared/ViewModels/BaseViewModel.cs
T

47 lines
979 B
C#

using Avalonia.Controls;
using MayShow.Helpers;
using MayShow.Interfaces;
using System;
using System.Collections.Generic;
using System.Text;
namespace MayShow.ViewModels;
class BaseViewModel : ChangeNotifier
{
IChangeViewModel _viewModelChanger;
ITopLevelGrabber? _topLevelGrabber;
public BaseViewModel(IChangeViewModel viewModelChanger): base()
{
_viewModelChanger = viewModelChanger;
_topLevelGrabber = null;
}
public ITopLevelGrabber? TopLevelGrabber
{
get => _topLevelGrabber;
set { _topLevelGrabber = value; }
}
public IChangeViewModel ViewModelChanger
{
get { return _viewModelChanger; }
set { _viewModelChanger = value; }
}
#region IChangeViewModel
public void PopViewModel()
{
_viewModelChanger?.PopViewModel();
}
public void PushViewModel(BaseViewModel model)
{
_viewModelChanger?.PushViewModel(model);
}
#endregion
}