コード例 #1
0
        /// <summary>
        /// Seta todos os DataBind do formulário.
        /// </summary>
        /// <param name="controle">Nome do controle para o bind</param>
        /// <param name="tp_Status">Status do formulário</param>
        internal void setarReadOnly_FormStatus(Control.ControlCollection controle, CompSoft.TipoFormStatus tp_Status)
        {
            foreach (Control ctrl in controle)
            {
                //-- Caso o controle possua mais controles internos.
                if (ctrl.Controls.Count > 0)
                {
                    //-- Chama o mesmo método para obter os controles.
                    //-- Este processo utiliza recurcividade.
                    setarReadOnly_FormStatus(ctrl.Controls, tp_Status);
                }

                if (ctrl.GetType().GetInterface("IBaseControl", true) != null)
                {
                    //-- Atualiza estado do controle
                    IBaseControl    cc    = ctrl as IBaseControl;
                    IBaseControl_DB cc_DB = null;
                    if (ctrl.GetType().GetInterface("IBaseControl_DB", true) != null)
                    {
                        cc_DB = cc as IBaseControl_DB;
                    }

                    switch (tp_Status)
                    {
                    case CompSoft.TipoFormStatus.Pesquisar:
                        cc.ReadOnly = true;
                        break;

                    case CompSoft.TipoFormStatus.Limpar:
                        cc.ReadOnly = false;
                        if (cc_DB != null && string.IsNullOrEmpty(cc_DB.ControlSource) && ctrl.GetType() == typeof(cf_TextBox))
                        {
                            ctrl.Text = string.Empty;
                        }

                        break;

                    case CompSoft.TipoFormStatus.Modificando:
                        //-- Verifica se o controle é identity
                        if (cc_DB != null && Control_IsIdentity(ref cc_DB))
                        {
                            cc.ReadOnly = true;
                        }
                        else
                        {
                            cc.ReadOnly = false;
                        }

                        break;

                    case CompSoft.TipoFormStatus.Nenhum:
                        cc.ReadOnly = true;
                        break;

                    case CompSoft.TipoFormStatus.Novo:
                        if (ctrl.GetType() == typeof(cf_TreeView))
                        {
                            ((cf_Bases.cf_TreeView)ctrl).Clear();
                        }

                        //-- Verifica se o controle é identity
                        if (cc_DB != null && this.Control_IsIdentity(ref cc_DB))
                        {
                            cc.ReadOnly = true;
                        }
                        else
                        {
                            cc.ReadOnly = false;
                        }

                        break;
                    }
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Atualiza todos os estados da barra de ferramentos.
        /// </summary>
        internal void TratarStatus_BarraFerramentas(CompSoft.TipoFormStatus TpFormStatus, CompSoft.TipoForm TpForm)
        {
            if (Propriedades.FormMain != null)
            {
                //-- Atualiza os botões da barra de tarefas do main.
                switch (TpFormStatus)
                {
                case CompSoft.TipoFormStatus.Nenhum:
                    Propriedades.FormMain.cmdToolPrimeiro.Enabled           = false;
                    Propriedades.FormMain.cmdToolAnterior.Enabled           = false;
                    Propriedades.FormMain.cmdToolProximo.Enabled            = false;
                    Propriedades.FormMain.cmdToolUltimo.Enabled             = false;
                    Propriedades.FormMain.cmdToolNovo.Enabled               = false;
                    Propriedades.FormMain.cmdToolAlterar.Enabled            = false;
                    Propriedades.FormMain.cmdToolExcluir.Enabled            = false;
                    Propriedades.FormMain.cmdToolSalvar.Enabled             = false;
                    Propriedades.FormMain.cmdToolPesquisar.Enabled          = false;
                    Propriedades.FormMain.cmdToolLimpartela.Enabled         = false;
                    Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = false;
                    Propriedades.FormMain.cmdToolAtualizar.Enabled          = false;
                    Propriedades.FormMain.cmdToolLookUp.Enabled             = false;
                    Propriedades.FormMain.cmdToolImpressao.Enabled          = false;
                    break;

                case CompSoft.TipoFormStatus.Novo:
                    Propriedades.FormMain.cmdToolPrimeiro.Enabled           = false;
                    Propriedades.FormMain.cmdToolAnterior.Enabled           = false;
                    Propriedades.FormMain.cmdToolProximo.Enabled            = false;
                    Propriedades.FormMain.cmdToolUltimo.Enabled             = false;
                    Propriedades.FormMain.cmdToolNovo.Enabled               = false;
                    Propriedades.FormMain.cmdToolAlterar.Enabled            = false;
                    Propriedades.FormMain.cmdToolExcluir.Enabled            = false;
                    Propriedades.FormMain.cmdToolSalvar.Enabled             = true;
                    Propriedades.FormMain.cmdToolPesquisar.Enabled          = false;
                    Propriedades.FormMain.cmdToolLimpartela.Enabled         = true;
                    Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = true;
                    Propriedades.FormMain.cmdToolAtualizar.Enabled          = false;
                    Propriedades.FormMain.cmdToolLookUp.Enabled             = false;
                    Propriedades.FormMain.cmdToolImpressao.Enabled          = false;

                    break;

                case CompSoft.TipoFormStatus.Limpar:
                    Propriedades.FormMain.cmdToolPrimeiro.Enabled   = false;
                    Propriedades.FormMain.cmdToolAnterior.Enabled   = false;
                    Propriedades.FormMain.cmdToolProximo.Enabled    = false;
                    Propriedades.FormMain.cmdToolUltimo.Enabled     = false;
                    Propriedades.FormMain.cmdToolLimpartela.Enabled = true;
                    Propriedades.FormMain.cmdToolPesquisar.Enabled  = true;
                    Propriedades.FormMain.cmdToolAtualizar.Enabled  = false;
                    Propriedades.FormMain.cmdToolLookUp.Enabled     = false;
                    Propriedades.FormMain.cmdToolImpressao.Enabled  = false;

                    if (TpForm == CompSoft.TipoForm.Geral)
                    {
                        Propriedades.FormMain.cmdToolNovo.Enabled               = true;
                        Propriedades.FormMain.cmdToolAlterar.Enabled            = false;
                        Propriedades.FormMain.cmdToolExcluir.Enabled            = false;
                        Propriedades.FormMain.cmdToolSalvar.Enabled             = false;
                        Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = false;
                    }
                    else
                    {
                        Propriedades.FormMain.cmdToolNovo.Enabled               = false;
                        Propriedades.FormMain.cmdToolAlterar.Enabled            = false;
                        Propriedades.FormMain.cmdToolExcluir.Enabled            = false;
                        Propriedades.FormMain.cmdToolSalvar.Enabled             = false;
                        Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = false;
                    }
                    break;

                case CompSoft.TipoFormStatus.Pesquisar:
                    Propriedades.FormMain.cmdToolPrimeiro.Enabled   = true;
                    Propriedades.FormMain.cmdToolAnterior.Enabled   = true;
                    Propriedades.FormMain.cmdToolProximo.Enabled    = true;
                    Propriedades.FormMain.cmdToolUltimo.Enabled     = true;
                    Propriedades.FormMain.cmdToolPesquisar.Enabled  = false;
                    Propriedades.FormMain.cmdToolLimpartela.Enabled = true;
                    Propriedades.FormMain.cmdToolAtualizar.Enabled  = true;
                    Propriedades.FormMain.cmdToolLookUp.Enabled     = true;
                    Propriedades.FormMain.cmdToolImpressao.Enabled  = true;

                    if (TpForm == CompSoft.TipoForm.Geral)
                    {
                        Propriedades.FormMain.cmdToolNovo.Enabled               = true;
                        Propriedades.FormMain.cmdToolAlterar.Enabled            = true;
                        Propriedades.FormMain.cmdToolExcluir.Enabled            = true;
                        Propriedades.FormMain.cmdToolSalvar.Enabled             = false;
                        Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = false;
                    }
                    else
                    {
                        Propriedades.FormMain.cmdToolNovo.Enabled               = false;
                        Propriedades.FormMain.cmdToolAlterar.Enabled            = false;
                        Propriedades.FormMain.cmdToolExcluir.Enabled            = false;
                        Propriedades.FormMain.cmdToolSalvar.Enabled             = false;
                        Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = false;
                    }
                    break;

                case CompSoft.TipoFormStatus.Modificando:
                    Propriedades.FormMain.cmdToolPrimeiro.Enabled           = false;
                    Propriedades.FormMain.cmdToolAnterior.Enabled           = false;
                    Propriedades.FormMain.cmdToolProximo.Enabled            = false;
                    Propriedades.FormMain.cmdToolUltimo.Enabled             = false;
                    Propriedades.FormMain.cmdToolNovo.Enabled               = false;
                    Propriedades.FormMain.cmdToolAlterar.Enabled            = false;
                    Propriedades.FormMain.cmdToolExcluir.Enabled            = false;
                    Propriedades.FormMain.cmdToolSalvar.Enabled             = true;
                    Propriedades.FormMain.cmdToolPesquisar.Enabled          = false;
                    Propriedades.FormMain.cmdToolLimpartela.Enabled         = false;
                    Propriedades.FormMain.cmdToolCancelarAlteracoes.Enabled = true;
                    Propriedades.FormMain.cmdToolAtualizar.Enabled          = false;
                    Propriedades.FormMain.cmdToolLookUp.Enabled             = false;
                    Propriedades.FormMain.cmdToolImpressao.Enabled          = false;
                    break;
                }

                if (Propriedades.FormMain.ActiveMdiChild != null && this.Check_Extension(Propriedades.FormMain.ActiveMdiChild.GetType(), typeof(FormSet)))
                {
                    //-- Verifica se a barra de ferramentas sofrerá alterações.
                    FormSet f = ((FormSet)Propriedades.FormMain.ActiveMdiChild);
                    if (!f.Barra_Ferramentas_Novo_Registro)
                    {
                        Propriedades.FormMain.cmdToolNovo.Enabled = false;
                    }

                    if (!f.Barra_Ferramentas_Editar_Registro)
                    {
                        Propriedades.FormMain.cmdToolAlterar.Enabled = false;
                    }

                    if (!f.Barra_Ferramentas_Excluir_Registro)
                    {
                        Propriedades.FormMain.cmdToolExcluir.Enabled = false;
                    }

                    if (!f.Barra_Ferramentas_Limpar_Tela)
                    {
                        Propriedades.FormMain.cmdToolLimpartela.Enabled = false;
                    }

                    if (!f.Barra_Ferramentas_Pesquisar_Registro)
                    {
                        Propriedades.FormMain.cmdToolPesquisar.Enabled = false;
                    }

                    if (!f.Barra_Ferramentas_Relatorios)
                    {
                        Propriedades.FormMain.cmdToolImpressao.Enabled = false;
                    }
                }
            }
        }