private void AddControloAut(object Sender, ListViewItem ListViewItem)
        {
            GISADataset.IndexFRDCARow IndexFRDCARow = null;
            IndexFRDCARow = (GISADataset.IndexFRDCARow)ListViewItem.Tag;
            if (ListViewItem.ListView == lstVwSubTipoInformacional)
            {
                IndexFRDCARow.Selector = 1;
            }
            else if (ListViewItem.ListView == lstVwTipoInformacional)
            {
                IndexFRDCARow.Selector = -1;
            }

            ListViewItem.SubItems.Add(TranslationHelper.FormatBoolean(IndexFRDCARow.ControloAutRow.Autorizado));
            ListViewItem.SubItems.Add(TranslationHelper.FormatBoolean(IndexFRDCARow.ControloAutRow.Completo));

            // se se tratar de uma tipologia informacional garantir que existe apenas um item
            if (ListViewItem.ListView == lstVwTipoInformacional)
            {
                if (lstVwTipoInformacional.Items.Count > 1)
                {
                    GISADataset.IndexFRDCARow idxCARow = null;
                    switch (MessageBox.Show("Não pode existir mais que uma tipologia informacional. Deseja substituir a existente?", "Tipologia informacional", MessageBoxButtons.OKCancel, MessageBoxIcon.Question))
                    {
                    case DialogResult.OK:
                        // eliminar todos as tipologias informacionais excepto a que acaba de ser adicionada
                        foreach (ListViewItem item in lstVwTipoInformacional.Items)
                        {
                            if (!(item == ListViewItem))
                            {
                                idxCARow = (GISADataset.IndexFRDCARow)item.Tag;
                                item.Remove();
                                idxCARow.Delete();
                            }
                        }
                        break;

                    case DialogResult.Cancel:
                        // eliminar a tipologia informacional que acaba de ser adicionada
                        idxCARow = (GISADataset.IndexFRDCARow)ListViewItem.Tag;
                        ListViewItem.Remove();
                        idxCARow.Delete();
                        break;
                    }
                }

                // Mandar actualizar o PanelConteudoInformacional
                this.TheGenericDelegate.Invoke();
            }
        }