示例#1
0
 /// <summary>
 /// Invoked when the "New playlist" item has been edited.
 /// </summary>
 /// <param name="sender">The sender of the event</param>
 /// <param name="e">The event data</param>
 private void CreateNewPlaylist_Edited(object sender, EditableTextBlockEventArgs e)
 {
     if (e.NewText != U.T("NavigationCreateNew") && e.NewText != "")
     {
         List <object> addQueue = AddToPlaylistQueue;
         PlaylistManager.CreatePlaylist(e.NewText, addQueue.Count == 0);
         if (addQueue.Count > 0)
         {
             PlaylistManager.AddToPlaylist(addQueue, e.NewText);
             addQueue.Clear();
         }
     }
     else
     {
         CreateNewPlaylist_Canceled(sender, e);
     }
 }
示例#2
0
        /// <summary>
        /// Invoked when a drop occurs on a playlist item.
        /// </summary>
        /// <param name="sender">The sender of the event</param>
        /// <param name="e">The event data</param>
        public void Playlist_Drop(object sender, DragEventArgs e)
        {
            List <object>     DraggedItems = e.Data.GetData(typeof(List <object>)) as List <object>;
            TreeViewItem      tvi          = sender as TreeViewItem;
            DockPanel         dp           = tvi.Header as DockPanel;
            EditableTextBlock etb          = dp.Children[1] as EditableTextBlock;

            if (etb.Text == U.T("NavigationCreateNew"))
            {
                AddToPlaylistQueue.Clear();
                foreach (TrackData track in DraggedItems)
                {
                    AddToPlaylistQueue.Add(track);
                }
                CreateNewPlaylistETB.IsInEditMode = true;
            }
            else
            {
                PlaylistManager.AddToPlaylist(DraggedItems, etb.Text);
            }
        }