Esempio n. 1
0
		/// <summary>
		/// Ocorre quando o coletor recupera nomes
		/// </summary>
		/// <param name="nomes">Nomes recuperados da camada de acesso</param>
		private void Recuperação(List<Entidades.Pessoa.Pessoa> pessoas)
		{
            try
            {
                if (lista.InvokeRequired)
                {
                    RecuperaçãoCallback método = new RecuperaçãoCallback(Recuperação);
                    lista.BeginInvoke(método, new object[] { pessoas });
                }
                else
                {
                    // Limpar lista
                    lista.Visible = false;
                    lista.Items.Clear();

                    // Recriar hashtable para encontrar entidades pela linha selecionada do listview
                    hashItemPessoa.Clear();

                    // Verificar se há pessoas para mostrar
                    if (pessoas.Count == 0)
                    {
                        lista.Visible = false;
                        return;
                    }

                    ListViewItem[] itens = CriarItens(pessoas);
                    lista.Items.AddRange(itens);
                    lista.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);

                    /* Verificar se o controle ainda retém o foco para mostrar a lista
                     * O foco no TextBox é sempre falso neste ponto, talvez porque esta
                     * função é chamada externamente pelo ColetorPessoas. (Estranho)
                     * Portanto, utiliza-se o travar para verificar se o controle está
                     * com foco.
                     *                      -- Júlio, 06/03/2004
                     */
                    if (!travar)
                    {
                        lista.Visible = Focused;
                        lista.BringToFront();
                    }
                }
            }
            catch (ObjectDisposedException)
            { /* Ignorar */ }
		}
        /// <summary>
        /// Ocorre quando o coletor recupera nomes
        /// </summary>
        /// <param name="nomes">Nomes recuperados da camada de acesso</param>
        private void Recuperação(Entidades.PedidoConserto.Pedido[] pedidos)
        {
            try
            {
                if (listaPedidos.InvokeRequired)
                {
                    RecuperaçãoCallback método = new RecuperaçãoCallback(Recuperação);
                    listaPedidos.BeginInvoke(método, new object[] { pedidos });
                }
                else
                {
                    listaPedidos.Adicionar(pedidos);

                    if (ultimaTeclaNaTxtBuscaÉEnter && pedidos.Length > 0)
                        VisualizarPedido(pedidos[0]);
                    else
                        txtBusca.Focus();
                }
            }
            catch (ObjectDisposedException)
            { /* Ignorar */ }
        }
        /// <summary>
        /// Ocorre quando o coletor recupera nomes
        /// </summary>
        /// <param name="nomes">Nomes recuperados da camada de acesso</param>
        private void Recuperação(List<Entidades.Pessoa.Pessoa> pessoas)
        {
            try
            {
                if (listaPessoasBusca.InvokeRequired)
                {
                    RecuperaçãoCallback método = new RecuperaçãoCallback(Recuperação);
                    listaPessoasBusca.BeginInvoke(método, new object[] { pessoas });
                }
                else
                {
                    AdicionarItens(CriarEntidadePessoaItem(pessoas));

                    if (ultimaTeclaNaTxtBuscaÉEnter && Escolhida != null && pessoas.Count > 0)
                        Escolhida(pessoas[0]);
                }
            }
            catch (ObjectDisposedException)
            {
            }
        }