コード例 #1
0
        private void db_update(int id) // добавление песен в бд
        {
            PlayEntities db = new PlayEntities();

            del_songs(id);
            foreach (var t in song_list)
            {
                db.playlist.Find(id).songs.Add(new songs {
                    playlist_id = id, song = t
                });
            }
            db.SaveChanges();
            pl_update();
        }
コード例 #2
0
 private void pl_rem_Click(object sender, RoutedEventArgs e) // удалегте плейлиста
 {
     if (listBox.SelectedItems.Count > 0)
     {
         int          i  = Convert.ToInt32(((ListViewItem)listBox.SelectedItem).Tag);
         PlayEntities db = new PlayEntities();
         del_songs(i);
         db.playlist.Remove(db.playlist.Find(i));
         db.SaveChanges();
     }
     else
     {
         MessageBox.Show("Select playlist before deleting", "Error");
     }
 }
コード例 #3
0
        private void del_songs(int id) // удаление песен из бд
        {
            PlayEntities db = new PlayEntities();

            var t = db.playlist.Find(id);

            {
                var r = db.songs.Where(x => x.playlist_id == id).ToList();
                for (int i = 0; i < r.Count; i++)
                {
                    db.songs.Remove(r[i]);
                }
            }
            db.SaveChanges();
            pl_update();
        }
コード例 #4
0
 private void ok_Click(object sender, RoutedEventArgs e) // Добавление плейлиста
 {
     if (textBox.Text != "" && textBox.Text != "Default")
     {
         PlayEntities db = new PlayEntities();
         playlist     p  = new playlist();
         p.name = textBox.Text; //
         db.playlist.Add(p);
         db.SaveChanges();
         this.Close();
     }
     else
     {
         MessageBox.Show("Please, enter correct name", "Error");
     }
 }
コード例 #5
0
        private void pl_update() // Добавление плейлистов в список
        {
            listBox.Items.Clear();
            PlayEntities db   = new PlayEntities(); // оъект модели бд
            ListViewItem item = new ListViewItem();

            item.Content    = "Default"; // то, что будет написано в item
            item.FontSize   = 10;
            item.FontWeight = FontWeights.Bold;
            listBox.Items.Add(item);
            foreach (var t in db.playlist) //из бд вытаскивает в список Item
            {
                ListViewItem item1 = new ListViewItem();
                item1.Tag     = t.id;
                item1.Content = t.name + ": " + t.songs.Count + " songs";
                listBox.Items.Add(item1);
            }
        }
コード例 #6
0
        private void listBox_PreviewMouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e) // список плейлистов
        {
            if (listBox.SelectedItems.Count > 0)
            {
                clear_time();
                if (((ListViewItem)listBox.SelectedItem).Content.ToString() != "Default")
                {
                    int i = Convert.ToInt32(((ListViewItem)listBox.SelectedItem).Tag);
                    pl_id = i;
                    song_list.Clear();

                    PlayEntities db = new PlayEntities();
                    foreach (var t in db.playlist.Find(i).songs)
                    {
                        song_list.Add(t.song);
                    }
                    update_list();
                    playlist_name.Content = db.playlist.Find(i).name;
                    pl_update();
                    if (status != MediaStatus.None && status != MediaStatus.Stopped)
                    {
                        directSoundOut.Stop();
                        status = MediaStatus.Stopped;
                    }
                }
                else
                {
                    pl_id = -1;
                    song_list.Clear();
                    update_list();
                    pl_update();
                    if (status != MediaStatus.None && status != MediaStatus.Stopped)
                    {
                        directSoundOut.Stop();
                        status = MediaStatus.Stopped;
                    }
                }
            }
        }