/// <summary> /// Обработчик события - при нажатии на кнопку "Save" (запись выбранного плейлиста с треками в таблицы базы данных) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BtnSave_Click(object sender, RoutedEventArgs e) { bool result = false; // была ли сделана запись или перезапись плейлиста // если треклист пуст, то ненадо записывать никаких данных if (trackslist.Count == 0) { ShowMessError("EMPTY_TRACK_LIST"); return; } // если пользователь не ввёл имя нового плей листа перед записью его в базу данных, то ненадо записывать никаких данных if (PlayListName.Text == String.Empty) { ShowMessError("EMPTY_NAME_PLAYLIST"); return; } SQLiteBd db = SQLiteBd.GetDbHandle("DB"); result = db.SavePlayListsDB(PlayerEntries.NameTablePlayLists, PlayerEntries.NameTableTracks, trackslist, PlayListName.Text); if (result) { Close(); //закрываем это окно если запись была сделана } }
/// <summary> /// Обработчик события - при нажатии на кнопку "Load" (загрузка выбранного плейлиста(треков находящихся в нём)) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BtnLoad_Click(object sender, RoutedEventArgs e) { if (PlayListName.Text == string.Empty) // если имя плейлиста пустое, то не нужно ничего загружать - выход { ShowMessError("NO_SELECT_PLAYLIST"); return; } List <string> tracklist = new List <string>(); SQLiteBd db = SQLiteBd.GetDbHandle("DB"); if (PlayListsBox.Items.Count != 0) { tracklist = db.LoadTrackListDB(PlayListName.Text, PlayerEntries.NameTableTracks); //если листбокс не пуст } if (tracklist.Count != 0) // если трек лист не пуст (загружен) { d(tracklist); // вызываем постройку треклиста с треами полученными из загруженного плейлиста Close(); // закрываем это окно } else { ShowMessError("PLAYLIST_NOT_FOUND"); // значит пользователем было введено имя несуществуещего плей листа } }
/// <summary> /// Обработчик события - при нажатии на кнопку "Delete" (удаление плейлиста с треками из таблиц базы данных и из тексбокса) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BtnDelete_Click(object sender, RoutedEventArgs e) { bool result = false; // выполнено удаление или нет if (PlayListName.Text == string.Empty) // если имя плейлиста пустое, то не нужно ничего удалять - выход { ShowMessError("NO_SELECT_PLAYLIST"); return; } if (PlayListsBox.Items.Count == 0) //если листбокс пуст { ShowMessError("PLAYLIST_NOT_FOUND"); return; } else { SQLiteBd db = SQLiteBd.GetDbHandle("DB"); result = db.DeletePlayListsDB(PlayerEntries.NameTablePlayLists, PlayerEntries.NameTableTracks, PlayListName.Text); // удаляем данные из таблиц базы данных if (result) { for (int i = 0; i < PlayListsBox.Items.Count; i++) //ищем имя плелиста введёное пользователем в элемент PlayListName ,если находим совпадение в листбоксе , то удаляем его из листбокса { if (PlayListsBox.Items[i].ToString() == PlayListName.Text) { PlayListsBox.Items.RemoveAt(i); } } } else { ShowMessError("PLAYLIST_NOT_FOUND"); // значит пользователем было введено имя несуществуещего плей листа } } }
/// <summary> /// Считываем список имен всех плейлистов , хранящихся в базе данных и добавляем их в листбокс /// </summary> private void ReadPlayLists() { SQLiteBd db = SQLiteBd.GetDbHandle("DB"); List <string> playlistsnames = db.LoadPlayListsDB(PlayerEntries.NameTablePlayLists); foreach (string name in playlistsnames) { PlayListsBox.Items.Add(name); } }