private void Filtrar(Aguarde aguarde, ControlePesquisaMercadoria controle)
 {
     FiltrarValorMáximo(aguarde, controle);
     FiltrarTipos(aguarde, controle);
     FiltrarMetais(aguarde, controle);
     FiltrarPedras(aguarde, controle);
 }
        private Entidades.Mercadoria.Mercadoria[] CarregarMercadorias()
        {
            Entidades.Mercadoria.Mercadoria[] mercadorias;
            UseWaitCursor = true;
            using (Aguarde aguarde = new Aguarde("Pesquisando...", 4))
            {
                aguarde.Abrir();

                using (ControlePesquisaMercadoria controle = new ControlePesquisaMercadoria(cmbTabela.Seleção))
                {
                    Filtrar(aguarde, controle);
                    aguarde.Passo();

                    mercadorias = controle.ObterMercadorias();
                }
            }

            UseWaitCursor = false;
            return mercadorias;
        }
 private void FiltrarValorMáximo(Aguarde aguarde, ControlePesquisaMercadoria controle)
 {
     aguarde.Passo();
     if (txtValorMáximo.Double > 0 && txtCotação.Cotação != null)
         controle.FiltrarÍndice(txtValorMáximo.Double / txtCotação.Cotação.Valor);
 }
 private void FiltrarTipos(Aguarde aguarde, ControlePesquisaMercadoria controle)
 {
     aguarde.Passo();
     if (chkTipo.CheckedItems.Count > 0)
         controle.FiltrarTipos((MercadoriaTipo[])(new ArrayList(chkTipo.CheckedItems).ToArray(typeof(MercadoriaTipo))));
 }
 private void FiltrarPedras(Aguarde aguarde, ControlePesquisaMercadoria controle)
 {
     aguarde.Passo();
     if (chkPedras.CheckedItems.Count > 0)
         controle.FiltrarPedras((Pedra[])(new ArrayList(chkPedras.CheckedItems).ToArray(typeof(Pedra))));
 }