ViewModel for the Views.TrackResultView.
상속: Caliburn.Micro.PropertyChangedBase
        /// <summary>
        /// Fetches the tracklist of the clicked release and displays it.
        /// </summary>
        /// <param name="sender">Clicked release as <see cref="LastAlbum"/>.</param>
        /// <param name="e">Ignored.</param>
        public async void ReleaseClicked(object sender, EventArgs e)
        {
            if (EnableControls)
            {
                EnableControls = false;

                try
                {
                    var release = sender as Release;

                    OnStatusUpdated("Trying to fetch tracklist from '" + release.Name + "'");

                    LastResponse <LastAlbum> detailedRelease = null;
                    if (release.Mbid != null && release.Mbid != "")
                    {
                        detailedRelease = await _lastfmAlbumAPI.GetInfoByMbidAsync(release.Mbid);
                    }
                    else
                    {
                        detailedRelease = await _lastfmAlbumAPI.GetInfoAsync(release.ArtistName, release.Name);
                    }

                    if (detailedRelease.Success)
                    {
                        FetchedTracks.Clear();
                        foreach (var t in detailedRelease.Content.Tracks)
                        {
                            FetchedTrackViewModel vm = new FetchedTrackViewModel(new ScrobbleBase(t.Name, t.ArtistName, t.AlbumName, "", t.Duration), release.Image);
                            vm.ToScrobbleChanged += ToScrobbleChanged;
                            FetchedTracks.Add(vm);
                        }

                        if (FetchedTracks.Count != 0)
                        {
                            CurrentView = _trackResultView;
                            OnStatusUpdated("Successfully fetched tracklist from '" + release.Name + "'");
                        }
                        else
                        {
                            OnStatusUpdated("'" + release.Name + "' has no tracks");
                        }
                    }
                    else
                    {
                        OnStatusUpdated("Error while fetching tracklist from '" + release.Name + "'");
                    }
                }
                catch (Exception ex)
                {
                    OnStatusUpdated("Fatal error while fetching tracklist from release: " + ex.Message);
                }
                finally
                {
                    EnableControls = true;
                }
            }
        }
    /// <summary>
    /// Fetches the tracklist of the clicked release and displays it.
    /// </summary>
    /// <param name="sender">Clicked release as <see cref="LastAlbum"/>.</param>
    /// <param name="e">Ignored.</param>
    public async void ReleaseClicked(object sender, EventArgs e)
    {
      if (EnableControls)
      {
        EnableControls = false;

        var release = sender as LastAlbum;

        OnStatusUpdated("Trying to fetch tracklist from '" + release.Name + "'");

        LastResponse<LastAlbum> detailedRelease = null;
        if (release.Mbid != null && release.Mbid != "")
          detailedRelease = await MainViewModel.Client.Album.GetInfoByMbidAsync(release.Mbid);
        else
          detailedRelease = await MainViewModel.Client.Album.GetInfoAsync(release.ArtistName, release.Name);

        if (detailedRelease.Success)
        {
          FetchedTracks.Clear();
          foreach (var t in detailedRelease.Content.Tracks)
          {
            FetchedTrackViewModel vm = new FetchedTrackViewModel(t, release.Images.Small);
            vm.ToScrobbleChanged += ToScrobbleChanged;
            FetchedTracks.Add(vm);
          }

          if (FetchedTracks.Count != 0)
          {
            CurrentView = _trackResultView;
            OnStatusUpdated("Successfully fetched tracklist from '" + release.Name + "'");
          }
          else
            OnStatusUpdated("'" + release.Name + "' has no tracks");
        }
        else
          OnStatusUpdated("Error while fetching tracklist from '" + release.Name + "'");

        EnableControls = true;
      }
    }