Beispiel #1
0
        protected override async Task ExecuteAsync(object parameter)
        {
            Meme meme = (Meme)parameter;

            DialogMemeVM dialogMemeVM = new DialogMemeVM(meme, meme.Folder, _dataService, "Редактирование мема");

            Meme editedMeme = (Meme)await MaterialDesignThemes.Wpf.DialogHost.Show(dialogMemeVM, _dialogId);

            dialogMemeVM.Dispose();
            dialogMemeVM = null;
            GC.Collect();
            GC.WaitForPendingFinalizers();

            if (editedMeme == null || string.IsNullOrEmpty(editedMeme.ImagePath))
            {
                return;
            }

            await _dataStorage.EditMeme(editedMeme);
        }
Beispiel #2
0
        protected override async Task ExecuteAsync(object parameter)
        {
            Folder folder = (Folder)parameter;

            DialogMemeVM dialogMemeVM = new DialogMemeVM(new Meme(), folder, _serviceCollectionClass, "Создание мема");

            Meme meme = (Meme)await MaterialDesignThemes.Wpf.DialogHost.Show(dialogMemeVM, _dialogId);

            dialogMemeVM.Dispose();
            dialogMemeVM = null;
            GC.Collect();
            GC.WaitForPendingFinalizers();

            if (meme == null || string.IsNullOrEmpty(meme.ImagePath))
            {
                return;
            }

            meme.Folder = folder;
            await _dataStorage.AddMeme(meme, folder);
        }