// Evento que vai remover o filme selecionado
        private void RemoveMovie(object sender, RoutedEventArgs e)
        {
            if (MessageBox.Show(string.Format("Deseja realmente remover \"{0}\"?", SelectedMovie.MovieModel.Title), "Aviso", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No)
            {
                return;
            }

            if (MovieModel.Remove((ObjectId)SelectedMovie.MovieModel.Id))
            {
                MessageBox.Show("Filme Excluido!");

                grid_details.Visibility           = Visibility.Collapsed;
                MainGrid.RowDefinitions[1].Height = new GridLength(Height);
            }
            else
            {
                MessageBox.Show("Erro ao excluir filme!");
            }

            MovieStoreManager.Movies = MovieStoreManager.GetAllMovies();
            Task.Factory.StartNew(() =>
            {
                LoadMovieControls();
            });
        }
        // Evento que vai abrir a tela de controle de gêneros
        private void OpenGenres(object sender, RoutedEventArgs e)
        {
            winManageGenre win = new winManageGenre();

            win.ShowDialog();

            cb_genres.ItemsSource = MovieStoreManager.GetAllGenres().Genres;
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            // Deixa a barra de informações de filmes invisível por enquanto, já que nenhum filme foi selecionado
            grid_details.Visibility           = Visibility.Collapsed;
            MainGrid.RowDefinitions[1].Height = new GridLength(Height);

            // Carrega os filmes encontrados no banco de dados com uma função assíncrona para evitar travamento da interface do usuário
            Task.Factory.StartNew(() =>
            {
                LoadMovieControls();
            });

            cb_genres.ItemsSource = MovieStoreManager.GetAllGenres().Genres;
        }
        private void QueryMovies(object sender, RoutedEventArgs e)
        {
            List <MovieModel> filteredmovies = MovieStoreManager.GetAllMovies();

            if (txt_filtername.Text != "")
            {
                if (filteredmovies == null)
                {
                    filteredmovies = MovieStoreManager.GetAllMovies();
                }

                filteredmovies = filteredmovies.Where(x => x.Title.Contains(txt_filtername.Text)).ToList();
            }

            if (txt_filteractor.Text != "")
            {
                if (filteredmovies == null)
                {
                    filteredmovies = MovieStoreManager.GetAllMovies();
                }

                filteredmovies = filteredmovies.Where(x => x.Cast.ContainsActor(txt_filteractor.Text)).ToList();
            }

            if (cb_genres.SelectedIndex != -1)
            {
                if ((string)cb_genres.SelectedValue != "*")
                {
                    if (filteredmovies == null)
                    {
                        filteredmovies = MovieStoreManager.GetAllMovies();
                    }

                    filteredmovies = filteredmovies.Where(x => x.Genre == (string)cb_genres.SelectedValue).ToList();
                }
            }

            MovieStoreManager.Movies = filteredmovies;
            LoadMovieControls();
        }