protected override async void OnNavigatedTo(NavigationEventArgs e){
   var navigationParams = e.Parameter as NavigationParameters;
   var vm = navigationParams.ViewModel as ViewModels.Vehicle;
   vm.SubscribeToEventBus(); // in case vm is a listener
   await vm.Initialize(); // in case of some initialization
   DataContext = vm; // set the DataContext at the very end
}
 
protected override void OnNavigatedFrom(NavigationEventArgs e){
  if (ViewModel != null){
    ViewModel.UnsubscribeFromEventBus(); // release the reference
  }
}