コード例 #1
0
        private void CommandBinding_EditMALLink(object sender, ExecutedRoutedEventArgs e)
        {
            object obj = e.Parameter;

            if (obj == null)
            {
                return;
            }

            try
            {
                AniDB_AnimeVM anime = this.DataContext as AniDB_AnimeVM;
                if (anime == null)
                {
                    return;
                }

                if (obj.GetType() == typeof(CrossRef_AniDB_MALVM))
                {
                    this.Cursor = Cursors.Wait;
                    CrossRef_AniDB_MALVM malLink = obj as CrossRef_AniDB_MALVM;

                    // prompt to select details
                    Window wdw = Window.GetWindow(this);

                    SelectMALStartForm frm = new SelectMALStartForm();
                    frm.Owner = wdw;
                    frm.Init(malLink.AnimeID, anime.FormattedTitle, malLink.MALTitle, malLink.MALID, malLink.StartEpisodeType, malLink.StartEpisodeNumber);
                    bool?result = frm.ShowDialog();
                    if (result.Value)
                    {
                        // update info
                        RefreshData();
                    }
                }
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
            finally
            {
                this.Cursor = Cursors.Arrow;
            }
        }
コード例 #2
0
        private void CommandBinding_EditMALLink(object sender, ExecutedRoutedEventArgs e)
        {
            object obj = e.Parameter;

            if (obj == null)
            {
                return;
            }

            try
            {
                if (!(DataContext is VM_AniDB_Anime anime))
                {
                    return;
                }

                if (obj is CrossRef_AniDB_MAL)
                {
                    Cursor = Cursors.Wait;
                    VM_CrossRef_AniDB_MAL malLink = obj as VM_CrossRef_AniDB_MAL;

                    // prompt to select details
                    Window wdw = Window.GetWindow(this);

                    SelectMALStartForm frm = new SelectMALStartForm();
                    frm.Owner = wdw;
                    frm.Init(malLink.AnimeID, anime.FormattedTitle, malLink.MALTitle, malLink.MALID, malLink.StartEpisodeType, malLink.StartEpisodeNumber);
                    bool?result = frm.ShowDialog();
                    if (result != null && result.Value)
                    {
                        RefreshData();
                    }
                }
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
            finally
            {
                Cursor = Cursors.Arrow;
            }
        }