/// <summary>
        /// Adiciona um endereço
        /// </summary>
        /// <param name="Pessoa"></param>
        internal void Adicionar(Entidades.Pessoa.Pessoa pessoa)
        {
            Entidades.Pessoa.Endereço.Endereço endereço = null;

            Focus();

            // Primeiro verifica se pessoa já está na lista.
            // Se estiver, faz nada.
            foreach (EtiquetaSedex etiqueta in hashItens.Values)
            {
                if (etiqueta.Pessoa.Código == pessoa.Código)
                    return;
            }

            if (pessoa.Endereços.ContarElementos() > 1) 
            {
                using (Apresentação.Pessoa.Endereço.EscolhaEndereço dlg =
                    new Apresentação.Pessoa.Endereço.EscolhaEndereço(pessoa.Endereços)) 
                {
                    if (dlg.ShowDialog(ParentForm) == DialogResult.OK)
                        endereço = dlg.Endereço;
                    else
                        return;
                }
            }
            else if (pessoa.Endereços.ContarElementos() == 0)
            {
                MessageBox.Show(
                    ParentForm,
                    "Não existe nenhum endereço cadastrado para este cliente, portanto não é possível imprimir etiqueta para mala-direta.",
                    "Mala-Direta",
                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            else
            {
                // Existe só um endereço
                endereço = pessoa.Endereços.ExtrairElementos()[0];
            }

            Entidades.EtiquetaSedex entidade = new Entidades.EtiquetaSedex();
            entidade.Pessoa = pessoa;
            entidade.Endereço = endereço;

            ListViewItem item = new ListViewItem();
            AtualizarItem(item, entidade);
            lista.Items.Add(item);
            hashItens[item] = entidade;

            Show();
        }
        private static void AtualizarItem(ListViewItem item, EtiquetaSedex entidade)
        {
            item.SubItems.Clear();
            item.Text = entidade.Pessoa.Código.ToString();

            if (entidade.Tipo == EtiquetaSedex.TipoEndereco.Remetente)
                item.SubItems.Add("Remetente");
            else
                item.SubItems.Add("Destinatário");

            item.SubItems.Add(entidade.Quantidade.ToString());
            item.SubItems.Add(entidade.Pessoa.Nome);
            item.SubItems.Add(entidade.Endereço.Localidade.Estado.Sigla);
            item.SubItems.Add(entidade.Endereço.Localidade.Nome);
            item.SubItems.Add(entidade.Endereço.Logradouro + " " + entidade.Endereço.Número);
        }