예제 #1
0
        private void EditAlbum()
        {
            if (SelectedAlbum == null)
            {
                MessageBox.Show("Please select album to edit!");
                return;
            }

            using (var scope = App.DiContainer.BeginLifetimeScope())
            {
                var albumViewModel = scope.Resolve <EditAlbumViewModel>();
                albumViewModel.Album = SelectedAlbum;
                albumViewModel.LoadSongsAsync();

                var albumWindow = new EditAlbumWindow {
                    DataContext = albumViewModel
                };

                albumWindow.ShowDialog();
            }

            UpdatePerformerPanelAsync();
        }
예제 #2
0
        private async void AddAlbumAsync()
        {
            if (SelectedPerformer == null)
            {
                MessageBox.Show("Please select performer!");
                return;
            }

            var albumToAdd = new Album
            {
                Id          = SelectedPerformer.Id,
                Name        = "New Album",
                ReleaseYear = (short)DateTime.Now.Year,
                TotalTime   = "0:00"
            };

            var album = (
                await _performerService.AddAlbumAsync(SelectedPerformer.Id, albumToAdd)
                ).Data;

            var albumViewModel = Mapper.Map <AlbumViewModel>(album);

            using (var scope = App.DiContainer.BeginLifetimeScope())
            {
                var editAlbumViewModel = scope.Resolve <EditAlbumViewModel>();
                editAlbumViewModel.Album = albumViewModel;

                var editAlbumWindow = new EditAlbumWindow
                {
                    DataContext = editAlbumViewModel
                };

                editAlbumWindow.ShowDialog();
            }

            await InsertAlbumToCollectionAsync(albumViewModel);
        }