protected void ImgEliMailTitular_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                GridViewRow _gvrow = (GridViewRow)(sender as Control).Parent.Parent;
                _codigo    = GrdvMailTitular.DataKeys[_gvrow.RowIndex].Values["CodigoDIGT"].ToString();
                _dtbcorreo = (DataTable)ViewState["CorreoTitular"];
                _result    = _dtbcorreo.Select("CodigoMATD='" + _codigo + "'").FirstOrDefault();
                _result.Delete();
                _dtbcorreo.AcceptChanges();
                ViewState["CorreoTitular"] = _dtbcorreo;
                GrdvMailTitular.DataSource = _dtbcorreo;
                GrdvMailTitular.DataBind();

                if (ViewState["CodigoPERS"].ToString() != "0")
                {
                    _dts = new ConsultaDatosDAO().FunNewDireccionEmail(2, int.Parse(_codigo), "",
                                                                       "", "", "", "", "", "", "", "", "", "", 0, 0, 0, 0, 0, "", Session["Conectar"].ToString());
                }

                DdlMailTitular.SelectedValue = "0";
                TxtMailTitular.Text          = "";
                ImgAddMailTitular.Enabled    = true;
                ImgModMailTitular.Enabled    = false;
            }
            catch (Exception ex)
            {
                Lblerror.Text = ex.ToString();
            }
        }
        protected void ImgModMailTitular_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                if (DdlMailTitular.SelectedValue == "0")
                {
                    new FuncionesDAO().FunShowJSMessage("Seleccione Tipo Email..!", this);
                    return;
                }

                if (string.IsNullOrEmpty(TxtMailTitular.Text.Trim()))
                {
                    new FuncionesDAO().FunShowJSMessage("Ingrese E-Mail..!", this);
                    return;
                }

                if (!new FuncionesDAO().Email_bien_escrito(TxtMailTitular.Text.Trim()))
                {
                    new FuncionesDAO().FunShowJSMessage("Email Incorrecto Titular..!", this);
                    return;
                }

                _dtbcorreo = (DataTable)ViewState["CorreoTitular"];

                if (ViewState["EMailTitular"].ToString() != TxtMailTitular.Text.Trim())
                {
                    _result = _dtbcorreo.Select("Email='" + TxtMailTitular.Text.Trim().ToLower() + "'").FirstOrDefault();

                    if (_result != null)
                    {
                        _lexiste = true;
                    }

                    if (_lexiste)
                    {
                        new FuncionesDAO().FunShowJSMessage("E-Mail ya Existe..!", this);
                        return;
                    }
                }

                _result               = _dtbcorreo.Select("CodigoDIGT='" + ViewState["CodigoDIGT"].ToString() + "'").FirstOrDefault();
                _result["Tipo"]       = DdlMailTitular.SelectedItem.ToString();
                _result["Definicion"] = DdlMailTitular.SelectedValue;
                _result["Email"]      = TxtMailTitular.Text.Trim().ToLower();
                _dtbcorreo.AcceptChanges();
                ViewState["CorreoTitular"] = _dtbcorreo;
                GrdvMailTitular.DataSource = _dtbcorreo;
                GrdvMailTitular.DataBind();

                ImgAddMailTitular.Enabled = true;
                ImgModMailTitular.Enabled = false;

                if (ViewState["CodigoPERS"].ToString() != "0")
                {
                    _dts = new ConsultaDatosDAO().FunNewDireccionEmail(4, int.Parse(ViewState["CodigoDIGT"].ToString()), "",
                                                                       "CORREO", "TIT", DdlMailTitular.SelectedValue, "", "", TxtMailTitular.Text.Trim().ToLower(), "", "", "", "",
                                                                       0, 0, 0, 0, int.Parse(Session["usuCodigo"].ToString()), Session["MachineName"].ToString(),
                                                                       Session["Conectar"].ToString());
                }

                DdlMailTitular.SelectedValue = "0";
                TxtMailTitular.Text          = "";
            }
            catch (Exception ex)
            {
                Lblerror.Text = ex.ToString();
            }
        }
        private void FunCargarCombos(int opcion)
        {
            try
            {
                switch (opcion)
                {
                case 0:
                    DdlTipoDocumento.DataSource = new ControllerDAO().FunGetParametroDetalle("TIPO DOCUMENTO",
                                                                                             "--Seleccione Tipo--", "S");
                    DdlTipoDocumento.DataTextField  = "Descripcion";
                    DdlTipoDocumento.DataValueField = "Codigo";
                    DdlTipoDocumento.DataBind();

                    DdlGenero.DataSource     = new ControllerDAO().FunGetParametroDetalle("GENERO", "--Seleccione Género--", "S");
                    DdlGenero.DataTextField  = "Descripcion";
                    DdlGenero.DataValueField = "Codigo";
                    DdlGenero.DataBind();

                    DdlProvincia.DataSource = new ConsultaDatosDAO().FunConsultaDatos(186,
                                                                                      0, 0, 0, "", "", "", Session["Conectar"].ToString());
                    DdlProvincia.DataTextField  = "Descripcion";
                    DdlProvincia.DataValueField = "Codigo";
                    DdlProvincia.DataBind();

                    _itemc.Text  = "--Seleccione Ciudad--";
                    _itemc.Value = "0";
                    DdlCiudad.Items.Add(_itemc);

                    DdlEstCivil.DataSource = new ControllerDAO().FunGetParametroDetalle("ESTADO CIVIL",
                                                                                        "--Seleccione Est. Civil--", "S");
                    DdlEstCivil.DataTextField  = "Descripcion";
                    DdlEstCivil.DataValueField = "Codigo";
                    DdlEstCivil.DataBind();

                    DdlDirTitular.DataSource = new ControllerDAO().FunGetParametroDetalle("TIPO DIRECCION",
                                                                                          "--Seleccione Tipo--", "S");
                    DdlDirTitular.DataTextField  = "Descripcion";
                    DdlDirTitular.DataValueField = "Codigo";
                    DdlDirTitular.DataBind();

                    DdlMailTitular.DataSource = new ControllerDAO().FunGetParametroDetalle("TIPO CORREO",
                                                                                           "--Seleccione Tipo--", "S");
                    DdlMailTitular.DataTextField  = "Descripcion";
                    DdlMailTitular.DataValueField = "Codigo";
                    DdlMailTitular.DataBind();
                    break;

                case 1:
                    DdlCiudad.DataSource = new ConsultaDatosDAO().FunConsultaDatos(186,
                                                                                   1, int.Parse(DdlProvincia.SelectedValue), 0, "", "", "", Session["Conectar"].ToString());
                    DdlCiudad.DataTextField  = "Descripcion";
                    DdlCiudad.DataValueField = "Codigo";
                    DdlCiudad.DataBind();
                    break;

                case 2:
                    _dts = new ConsultaDatosDAO().FunConsultaDatos(32, int.Parse(ViewState["CodigoPERS"].ToString()), 0,
                                                                   0, "", "", "", Session["Conectar"].ToString());

                    if (_dts.Tables[0].Rows.Count > 0)
                    {
                        DdlTipoDocumento.SelectedValue = _dts.Tables[0].Rows[0]["Tipodocumento"].ToString();
                        TxtNumeroDocumento.Text        = _dts.Tables[0].Rows[0]["Cedula"].ToString();
                        ViewState["Numdocumento"]      = TxtNumeroDocumento.Text;
                        TxtNombres.Text            = _dts.Tables[0].Rows[0]["Nombres"].ToString();
                        TxtApellidos.Text          = _dts.Tables[0].Rows[0]["Apellidos"].ToString();
                        TxtFechaNacimiento.Text    = _dts.Tables[0].Rows[0]["FechaNaci"].ToString();
                        DdlGenero.SelectedValue    = _dts.Tables[0].Rows[0]["Genero"].ToString();
                        DdlProvincia.SelectedValue = _dts.Tables[0].Rows[0]["CodProv"].ToString();
                        FunCargarCombos(1);
                        DdlCiudad.SelectedValue   = _dts.Tables[0].Rows[0]["CodCiudad"].ToString();
                        DdlEstCivil.SelectedValue = _dts.Tables[0].Rows[0]["EstCivil"].ToString();

                        _dts = new ConsultaDatosDAO().FunConsultaDatos(187, 0, 0, 0, "", TxtNumeroDocumento.Text.Trim(), "",
                                                                       Session["Conectar"].ToString());

                        ViewState["DireccionTitular"] = _dts.Tables[3];
                        ViewState["CorreoTitular"]    = _dts.Tables[4];

                        GrdvDirecTitular.DataSource = _dts.Tables[3];
                        GrdvDirecTitular.DataBind();

                        GrdvMailTitular.DataSource = _dts.Tables[4];
                        GrdvMailTitular.DataBind();
                    }
                    break;

                case 3:
                    if (ViewState["Numdocumento"].ToString() != TxtNumeroDocumento.Text.Trim())
                    {
                        _dts = new ConsultaDatosDAO().FunConsultaDatos(175, 0, 0, 0, "", TxtNumeroDocumento.Text.Trim(),
                                                                       "", Session["Conectar"].ToString());

                        if (_dts.Tables[0].Rows.Count > 0)
                        {
                            new FuncionesDAO().FunShowJSMessage("Numero de Documento ya existe..!", this);
                            TxtNumeroDocumento.Text = ViewState["Numdocumento"].ToString();
                        }
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                Lblerror.Text = ex.ToString();
            }
        }
        protected void ImgAddMailTitular_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                if (DdlMailTitular.SelectedValue == "0")
                {
                    new FuncionesDAO().FunShowJSMessage("Seleccione Tipo Email..!", this);
                    return;
                }

                if (string.IsNullOrEmpty(TxtMailTitular.Text.Trim()))
                {
                    new FuncionesDAO().FunShowJSMessage("Ingrese E-Mail..!", this);
                    return;
                }

                if (!new FuncionesDAO().Email_bien_escrito(TxtMailTitular.Text.Trim()))
                {
                    new FuncionesDAO().FunShowJSMessage("Email Incorrecto Titular..!", this);
                    return;
                }

                if (ViewState["CorreoTitular"] != null)
                {
                    _tblbuscar = (DataTable)ViewState["CorreoTitular"];

                    if (_tblbuscar.Rows.Count > 0)
                    {
                        _maxcodigo = _tblbuscar.AsEnumerable()
                                     .Max(row => int.Parse((string)row["CodigoDIGT"]));
                    }
                    else
                    {
                        _maxcodigo = 0;
                    }

                    _result = _tblbuscar.Select("Email='" + TxtMailTitular.Text.Trim().ToLower() + "'").FirstOrDefault();

                    if (_result != null)
                    {
                        _lexiste = true;
                    }
                }

                if (_lexiste)
                {
                    new FuncionesDAO().FunShowJSMessage("Correo ya Existe..!", this);
                    return;
                }

                _dtbcorreo              = (DataTable)ViewState["CorreoTitular"];
                _filagre                = _dtbcorreo.NewRow();
                _filagre["CodigoDIGT"]  = _maxcodigo + 1;
                _filagre["Tipo"]        = DdlMailTitular.SelectedItem.ToString();
                _filagre["TipoCliente"] = "TIT";
                _filagre["Definicion"]  = DdlMailTitular.SelectedValue;
                _filagre["Email"]       = TxtMailTitular.Text.Trim().ToLower();
                _filagre["Nuevo"]       = "SI";

                _dtbcorreo.Rows.Add(_filagre);
                ViewState["CorreoTitular"] = _dtbcorreo;
                GrdvMailTitular.DataSource = _dtbcorreo;
                GrdvMailTitular.DataBind();

                if (ViewState["CodigoPERS"].ToString() != "0")
                {
                    _dts = new ConsultaDatosDAO().FunNewDireccionEmail(3, 0, TxtNumeroDocumento.Text.Trim(),
                                                                       "CORREO", "TIT", DdlMailTitular.SelectedValue, "", "",
                                                                       TxtMailTitular.Text.Trim().ToLower(), "", "", "", "", 0, 0, 0, 0, int.Parse(Session["usuCodigo"].ToString()),
                                                                       Session["MachineName"].ToString(), Session["Conectar"].ToString());

                    ViewState["CorreoTitular"] = _dts.Tables[0];
                    GrdvMailTitular.DataSource = _dts.Tables[0];
                    GrdvMailTitular.DataBind();
                }

                DdlMailTitular.SelectedValue = "0";
                TxtMailTitular.Text          = "";
            }
            catch (Exception ex)
            {
                Lblerror.Text = ex.ToString();
            }
        }