Пример #1
0
 public ImageViewerPageViewModel(IllustrationViewerPageViewModel illustrationViewerPageViewModel, IllustrationViewModel illustrationViewModel)
 {
     IllustrationViewerPageViewModel = illustrationViewerPageViewModel;
     IllustrationViewModel           = illustrationViewModel;
     ImageLoadingCancellationHandle  = new CancellationHandle();
     _ = LoadImage();
 }
        public override void OnPageActivated(NavigationEventArgs e)
        {
            if (ConnectedAnimationService.GetForCurrentView().GetAnimation("ForwardConnectedAnimation") is { } animation)
            {
                animation.Configuration = new DirectConnectedAnimationConfiguration();
                animation.TryStart(IllustrationImageShowcaseFrame);
            }

            _viewModel        = (IllustrationViewerPageViewModel)e.Parameter;
            _illustrationInfo = new NavigationViewTag(typeof(IllustrationInfoPage), _viewModel);
            _comments         = new NavigationViewTag(typeof(CommentsPage), (App.AppViewModel.MakoClient.IllustrationComments(_viewModel.IllustrationId).Where(c => c is not null), _viewModel.IllustrationId)); // TODO

            IllustrationImageShowcaseFrame.Navigate(typeof(ImageViewerPage), _viewModel.Current);

            WeakReferenceMessenger.Default.Send(new MainPageFrameSetConnectedAnimationTargetMessage(_viewModel.IllustrationGrid?.GetItemContainer(_viewModel.IllustrationViewModelInTheGridView !) ?? App.AppViewModel.AppWindowRootFrame));
            WeakReferenceMessenger.Default.Register <IllustrationViewerPage, CommentRepliesHyperlinkButtonTappedMessage>(this, CommentRepliesHyperlinkButtonTapped);
        }
 public override void Prepare(NavigationEventArgs e)
 {
     _viewModel = (IllustrationViewerPageViewModel)e.Parameter;
     SetIllustrationCaptionText();
 }