void NextExample(object parameter)
 {
     string Usuario = Thread.CurrentPrincipal.Identity.Name;
     var win = new MainWindow();
     win.Show();
     CloseWindow();
 }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            bool flag = false;




            if (string.IsNullOrEmpty(PrimerNombre.Text)) { PrimerNombre.Text = ""; flag = true; }
            if (string.IsNullOrEmpty(PrimerApellido.Text)) { PrimerApellido.Text = ""; flag = true; }
            if (string.IsNullOrEmpty(NoDocumento.Text)) { NoDocumento.Text = ""; flag = true; }
            FechaNacimiento.Text = FechaNacimientodata.Text;
            if (string.IsNullOrEmpty(FechaNacimiento.Text)) { FechaNacimiento.Text = ""; flag = true; }
                DateTime dob;
                DateTimeFormatInfo info = new DateTimeFormatInfo();
                info.ShortDatePattern = "dd/MM/yy";
                bool valid = DateTime.TryParse(FechaNacimiento.Text, info, DateTimeStyles.None, out dob);
                if (valid)
                {
                    DateTime now = DateTime.Today;
                    int age = now.Year - dob.Year;
                    if (now <= dob)
                    {
                        FechaNacimientoError.Text = "Fecha nacimiento no superar la actual.";
                        FechaNacimientoError.Visibility = Visibility.Visible;
                        flag = true;
                    }
                    else
                    {
                        if (age < 15)
                        {
                            FechaNacimientoError.Text = "No se acepta el registro de menores de 15 años.";
                            FechaNacimientoError.Visibility = Visibility.Visible;
                            flag = true;
                        }
                        else
                        {
                            if (age > 99)
                            {
                                FechaNacimientoError.Text = "Fecha nacimiento no valida.";
                                FechaNacimientoError.Visibility = Visibility.Visible;
                                flag = true;
                            }
                            else
                            {
                                FechaNacimientoError.Visibility = Visibility.Hidden;
                            }
                        }
                    }
                }
            if (string.IsNullOrEmpty(RepetirNoDocumento.Text))
            {
                RepetirNoDocumento.Text = ""; flag = true;
            }
            if (string.IsNullOrEmpty(Direccion.Text)) { Direccion.Text = ""; flag = true; }
            if (string.IsNullOrEmpty(Telefono.Text))
            {
                Telefono.Text = ""; flag = true;
            }
            if (string.IsNullOrEmpty(Celular.Text)) { Celular.Text = ""; flag = true; }
            //if (string.IsNullOrEmpty(CorreoElectronico.Text)) { CorreoElectronico.Text = ""; flag = true; }
            if (!string.IsNullOrEmpty(CorreoElectronico.Text))
            {
                if (string.IsNullOrEmpty(CorreoElectronicoRepeat.Text)) { CorreoElectronicoRepeat.Text = ""; flag = true; }
                Regex regex = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$");
                Match match = regex.Match(CorreoElectronico.Text);
                if (!match.Success)
                {
                    flag = true;
                }
                match = regex.Match(CorreoElectronicoRepeat.Text);
                if (!match.Success)
                {
                    flag = true;
                }

            }
            if (CorreoElectronicoRepeat.Text != CorreoElectronico.Text)
            {
                flag = true;

                CorreoElectronicoRepeat.Text = "";
            }
            if (!string.IsNullOrEmpty(CorreoElectronicoRepeat.Text) && string.IsNullOrEmpty(CorreoElectronico.Text)) { flag = true; }
            string sexo = "";
            if (!(Femenino.IsChecked.Value) && !Masculino.IsChecked.Value)
            {
                Sexo.Visibility = Visibility.Visible; flag = true;
            }
            else
            {
                if (Femenino.IsChecked.Value)
                    sexo = "F";
                if (Masculino.IsChecked.Value)
                    sexo = "M";
            }
            if (ListDepartamento.SelectedValue.ToString() == "Seleccione Departamento")
            {
                DepartamentoError.Visibility = Visibility.Visible; flag = true;
            }
            if (Ciudad.SelectedValue == null)
            {
                CiudadError.Visibility = Visibility.Visible; flag = true;
            }
            if ((TipoDocumento.SelectedItem).ToString() == "Seleccione tipo documento")
            {
                TipoDocumentoError.Visibility = Visibility.Visible; flag = true;
            }

            //if ( Person.ReferenceEquals(Error).Equals(true))
            if (PrimerNombre.Text.Length > 50) { flag = true; }
            if (SegundoNombre.Text.Length > 50) { flag = true; }
            if (PrimerApellido.Text.Length > 50) { flag = true; }
            if (SegundoApellido.Text.Length > 50) { flag = true; }
            if (NoDocumento.Text.Length > 50) { flag = true; }
            if (NoDocumento.Text.Length > 50) { flag = true; }
            if (NoDocumento.Text.Length > 50) { flag = true; }
            if (Direccion.Text.Length > 50) { flag = true; }
            if (Barrio.Text.Length > 50) { flag = true; }
            if (Telefono.Text.Length > 50) { flag = true; }
            if (Celular.Text.Length > 50) { flag = true; }
            if (CorreoElectronico.Text.Length > 50) { flag = true; }
            if (string.IsNullOrEmpty(Telefono.Text))
            {
                flag = true;
            }
            else
            {
                Regex regex = new Regex(@"^\d+$");
                if (!regex.IsMatch(Telefono.Text))
                {
                    flag = true;
                }
                if (Telefono.Text.ToString().Length != 7)
                {
                    flag = true;
                }
            }

            if (string.IsNullOrEmpty(Celular.Text))
            {
                flag = true;
            }
            else
            {
                Regex regex = new Regex(@"^\d+$");
                if (!regex.IsMatch(Celular.Text))
                {
                    flag = true;
                }
                if (Celular.Text.ToString().Length != 10)
                {
                    flag = true;
                }
            }

            if (flag)
            {
                NoDocumento.GetBindingExpression(System.Windows.Controls.TextBox.TextProperty).UpdateSource();
            }
            else
            {
                var NextID = (from i in db.Personas.OrderByDescending(u => u.Id) select i.Id).FirstOrDefault();
                Personas personas = new Personas();
                personas.Id = NextID + 1;
                personas.PrimerNombre = PrimerNombre.Text;
                personas.SegundoNombre = SegundoNombre.Text;
                personas.PrimerApellido = PrimerApellido.Text;
                personas.SegundoApellido = SegundoApellido.Text;
                personas.Sexo = sexo;
                personas.TipoDocumento = ((ComboBoxItem)TipoDocumento.SelectedItem).Tag.ToString();
                personas.NoDocumento = NoDocumento.Text;
                personas.FechaNacimiento = DateTime.Parse(FechaNacimiento.Text); 
                personas.Usuario = NoDocumento.Text;
                personas.Contrasena = NoDocumento.Text;
                personas.Departamento = ((ComboBoxItem)ListDepartamento.SelectedItem).Tag.ToString();
                personas.Ciudad = ((ComboBoxItem)Ciudad.SelectedItem).Tag.ToString();
                if (Vereda.SelectedItem != null && Vereda.SelectedValue.ToString() != "")
                {
                    personas.Vereda = ((ComboBoxItem)Vereda.SelectedItem).Tag.ToString();
                }
                else {
                    personas.Vereda = "";
                }
                personas.Direccion = Direccion.Text;
                personas.Barrio = Barrio.Text;
                personas.Telefono = Telefono.Text;
                personas.Celular = Celular.Text;
                personas.CorreoElectronico = CorreoElectronico.Text;
                string Usuario = LebelUsuario.Content.ToString();
                string id_sede = (from u in db.UsuariosPuntos
                                  where u.Usuario.ToString().ToLower().Equals(Usuario.ToLower(), StringComparison.OrdinalIgnoreCase)
                                  select u.Id_sedeRedempleo).First().ToString();
                personas.CentroEmpleo = id_sede;
                personas.Estado = null ;
                personas.AllowEdit = true;
                personas.Fecha_Creacion = DateTime.Now;
                personas.Fecha_Modificacion = DateTime.Now;
                personas.Fecha_Sincronizacion = null;


                db.Personas.Add(personas);

                try
                {
                    db.SaveChanges();
                    var win = new MainWindow() { DataContext = new ViewModelMain() };
                    win.Show();
                    this.Close();
                }
                catch (DbEntityValidationException ex)
                {
                    // Retrieve the error messages as a list of strings.
                    var errorMessages = ex.EntityValidationErrors
                    .SelectMany(x => x.ValidationErrors)
                    .Select(x => x.ErrorMessage);

                    // Join the list to a single string.
                    var fullErrorMessage = string.Join("; ", errorMessages);

                    // Combine the original exception message with the new one.
                    var exceptionMessage = string.Concat(ex.Message, " The validation errors are: ", fullErrorMessage);
                    System.Windows.MessageBox.Show(exceptionMessage);
                }
            }
        }
 private void Button_Click_1(object sender, RoutedEventArgs e)
 {
     string Usuario = Thread.CurrentPrincipal.Identity.Name;
     var win = new MainWindow() { DataContext = new ViewModelMain() };
     win.Show();
     this.Close();
 }