private void BtnConjuntoDasPartes_Click(object sender, RoutedEventArgs e)
        {
            if (comboBoxA.SelectedValue != null && GetConjuntoByID(comboBoxA.SelectedValue.ToString()) != null)
            {
                Set conjuntoA = GetConjuntoByID(comboBoxA.SelectedValue.ToString());

                Set novoConjunto = Operator.SetOfParts(conjuntoA);
                txtSaida.Text = novoConjunto.ToString();

                ListaConjuntos.Add(novoConjunto);
                AtualizaLista();
                btnReverterPA.Visibility = Visibility.Visible;
            }
            else
            {
                txtSaida.Text = $"Para essa operação o primeiro ComboBox precisa selecionar um conjunto";
            }
        }
        private void BtnIntersecao_Click(object sender, RoutedEventArgs e)
        {
            if (IsSelecionado())
            {
                Set conjuntoA = GetConjuntoByID(comboBoxA.SelectedValue.ToString());
                Set conjuntoB = GetConjuntoByID(comboBoxB.SelectedValue.ToString());

                if (conjuntoA != null && conjuntoB != null)
                {
                    Set novoConjunto = Operator.Intersection(conjuntoA, conjuntoB);
                    txtSaida.Text = novoConjunto.ToString();

                    ListaConjuntos.Add(novoConjunto);
                    AtualizaLista();
                }
                else
                {
                    txtSaida.Text = $"A operação de Interseção só pode ser realizada entre conjuntos";
                }
            }
        }
        private void BtnOpenFile_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            if (openFileDialog.ShowDialog() == true)
            {
                string[] content;
                content = File.ReadAllLines(openFileDialog.FileName);
                StringToModel conversor  = new StringToModel();
                List <string> newContent = new List <string>();

                foreach (string line in content)
                {
                    if (line != null)
                    {
                        if (!line.Equals(""))
                        {
                            if (!line[0].Equals('#'))
                            {
                                newContent.Add(line);
                            }
                        }
                    }
                }

                conversor.Load(newContent);

                foreach (Set c in conversor.Sets)
                {
                    ListaConjuntos.Add(c);
                }

                foreach (Element el in conversor.Elements)
                {
                    ListaElementos.Add(el);
                }

                AtualizaLista();
            }
        }
        private void BtnProdutoCartesiano_Click(object sender, RoutedEventArgs e)
        {
            if (IsSelecionado())
            {
                Set conjuntoA = GetConjuntoByID(comboBoxA.SelectedValue.ToString());
                Set conjuntoB = GetConjuntoByID(comboBoxB.SelectedValue.ToString());

                if (conjuntoA != null && conjuntoB != null)
                {
                    Set novoConjunto = Operator.CartesianProduct(conjuntoA, conjuntoB);
                    txtSaida.Text = novoConjunto.ToString();

                    ListaConjuntos.Add(novoConjunto);
                    AtualizaLista();
                    btnReverterCart.Visibility = Visibility.Visible;
                }
                else
                {
                    txtSaida.Text = $"A operação de Produto Cartesiano só pode ser realizada entre conjuntos";
                }
            }
        }