partial void DeleteSIGEEA_Contacto(SIGEEA_Contacto instance);
 partial void InsertSIGEEA_Contacto(SIGEEA_Contacto instance);
 partial void UpdateSIGEEA_Contacto(SIGEEA_Contacto instance);
		private void detach_SIGEEA_Contactos(SIGEEA_Contacto entity)
		{
			this.SendPropertyChanging();
			entity.SIGEEA_Persona = null;
		}
		private void attach_SIGEEA_Contactos(SIGEEA_Contacto entity)
		{
			this.SendPropertyChanging();
			entity.SIGEEA_TipContacto = this;
		}
 public void EditarContacto(SIGEEA_Contacto pContacto)
 {
     DataClasses1DataContext dc = new DataClasses1DataContext();
     SIGEEA_Contacto contacto = dc.SIGEEA_Contactos.First(c => c.PK_Id_Contacto == pContacto.PK_Id_Contacto);
     contacto.Dato_Contacto = pContacto.Dato_Contacto;
     contacto.FK_Id_Persona = pContacto.FK_Id_Persona;
     contacto.FK_Id_TipContacto = pContacto.FK_Id_TipContacto;
     dc.SubmitChanges();
 }
        public void AgregarContacto(int pPersona, string pDato, string pTipoContacto)
        {
            DataClasses1DataContext dc = new DataClasses1DataContext();
            int fk_tipoContacto = dc.SIGEEA_TipContactos.FirstOrDefault(c => c.Nombre_TipContacto == pTipoContacto).PK_Id_TipContacto;

            SIGEEA_Contacto nuevoContacto = new SIGEEA_Contacto();
            nuevoContacto.Dato_Contacto = pDato;
            nuevoContacto.FK_Id_Persona = pPersona;
            nuevoContacto.FK_Id_TipContacto = fk_tipoContacto;

            dc.SIGEEA_Contactos.InsertOnSubmit(nuevoContacto);
            dc.SubmitChanges();
        }
 private void btnGuardar_Click(object sender, RoutedEventArgs e)
 {
     BrushConverter bc = new BrushConverter();
     txbContacto.Foreground = (Brush)bc.ConvertFrom("#FF000000");
     try
     {
         PersonaMantenimiento persona = new PersonaMantenimiento();
         ValidacionesMantenimiento validacion = new ValidacionesMantenimiento();
         if ((String)cmbTipoContacto.SelectedValue == "Correo" && validacion.Validar(txbContacto.Text, 2) == true)
         {
             if (Accion == "Insertar")
             {
                 persona.AgregarContacto(pPersona: pk_persona, pDato: txbContacto.Text, pTipoContacto: cmbTipoContacto.SelectedValue.ToString());
                 MessageBox.Show("Contacto añadido con éxito.", "SIGEEA", MessageBoxButton.OK);
             }
             else if (Accion == "Editar")
             {
                 SIGEEA_Contacto editarContacto = new SIGEEA_Contacto();
                 editarContacto.PK_Id_Contacto = pk_contacto;
                 editarContacto.Dato_Contacto = txbContacto.Text;
                 editarContacto.FK_Id_Persona = pk_persona;
                 DataClasses1DataContext dc = new DataClasses1DataContext();
                 editarContacto.FK_Id_TipContacto = dc.SIGEEA_TipContactos.First(c => c.Nombre_TipContacto == (String)cmbTipoContacto.SelectedValue).PK_Id_TipContacto;
                 persona.EditarContacto(editarContacto);
                 MessageBox.Show("Los cambios se realizaron con éxito.", "SIGEEA", MessageBoxButton.OK, MessageBoxImage.Exclamation);
             }
             this.Close();
             wnwContactos ventana = new wnwContactos(pk_persona);
             ventana.ShowDialog();
         }
         else if (((String)cmbTipoContacto.SelectedValue == "Tel. Movil" ||
                   (String)cmbTipoContacto.SelectedValue == "Tel. Residencia" ||
                   (String)cmbTipoContacto.SelectedValue == "Tel. Trabajo" ||
                   (String)cmbTipoContacto.SelectedValue == "Fax")
                   && validacion.Validar(txbContacto.Text, 1) == true)
         {
             if (Accion == "Insertar")
             {
                 persona.AgregarContacto(pPersona: pk_persona, pDato: txbContacto.Text, pTipoContacto: cmbTipoContacto.SelectedValue.ToString());
                 MessageBox.Show("Contacto añadido con éxito.", "SIGEEA", MessageBoxButton.OK);
             }
             else if (Accion == "Editar")
             {
                 SIGEEA_Contacto editarContacto = new SIGEEA_Contacto();
                 editarContacto.PK_Id_Contacto = pk_contacto;
                 editarContacto.Dato_Contacto = txbContacto.Text;
                 editarContacto.FK_Id_Persona = pk_persona;
                 DataClasses1DataContext dc = new DataClasses1DataContext();
                 editarContacto.FK_Id_TipContacto = dc.SIGEEA_TipContactos.First(c => c.Nombre_TipContacto == cmbTipoContacto.SelectedItem.ToString()).PK_Id_TipContacto;
                 persona.EditarContacto(editarContacto);
                 MessageBox.Show("Los cambios se realizaron con éxito.", "SIGEEA", MessageBoxButton.OK, MessageBoxImage.Exclamation);
             }
             this.Close();
             wnwContactos ventana = new wnwContactos(pk_persona);
             ventana.ShowDialog();
         }
         else
         {
             txbContacto.Foreground = (Brush)bc.ConvertFrom("#FFFF0404");
             throw new ArgumentException("Error al registrar: Formatos incompatibles con el sistema");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "SIGEEA", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }