/// <summary>
        /// Crea un nuevo proyecto para el equipo seleccionado y lo registra en
        /// el administrador de proyectos.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void rp_btn_RegistrarPro_Click(object sender, RoutedEventArgs e)
        {
            // validar que hay un equipo seleccionado
            int index = rp_lB_Equipos.SelectedIndex;

            if (index < 0)
            {
                MessageBox.Show("Selecciona un equipo.", "Info", MessageBoxButton.OK,
                                MessageBoxImage.Information);
            }
            else
            {
                // obtener y validar datos
                string   nombre = rp_tB_NombrePro.Text;
                string   desc   = rp_tB_DescPro.Text;
                int      cat    = rp_cB_Cat.SelectedIndex;
                string   palCla = rp_tB_PalCla.Text;
                string[] pC     = palCla.Split(' ');
                if (string.IsNullOrEmpty(nombre) || string.IsNullOrEmpty(desc) ||
                    cat < 0 || string.IsNullOrEmpty(palCla) || pC.Length < 1 || pC.Length > 5)
                {
                    MessageBox.Show("Debes llenar todos los campos y especificar entre 1 y 5 palabras clave.",
                                    "Info", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
                try
                {
                    // obtener el equipo seleccionado
                    CEquipo eS = CAdminEquipos.instance.ObtenerEquipo(index);
                    // crear un nuevo CProyecto
                    CProyecto p = new CProyecto(eS, nombre, desc, cat);
                    // agregar proyecto al equipo seleccionado
                    eS.AgregarProyecto(p);
                    // agregar palabras clave y proyecto al admin de busquedas
                    CAdminBusqueda.instance.AgregarProyecto(pC, p);
                    // actualizar el control que muestra los proyectos del equipo seleccionado
                    CUtilities.FillListBox(rp_lB_ProEquiSel, eS.ObtenerProyectos());
                    // cargar imagen
                    BitmapImage bi = LoadImage();
                    // si imagen es null, se asigna una por default.
                    if (bi == null)
                    {
                        bi = new BitmapImage(new Uri("pack://application:,,,/FeriaDeCiencia;component/Resources/science-fair2.png"));
                    }
                    // asignar imagen al proyecto
                    p.SetImage(bi);
                    MessageBox.Show("Se agrego el proyecto.", "Info", MessageBoxButton.OK,
                                    MessageBoxImage.Information);
                    // limpiar campos
                    rp_tB_NombrePro.Text = string.Empty;
                    rp_tB_DescPro.Text   = string.Empty;
                    rp_tB_PalCla.Text    = string.Empty;
                }
                catch (ArgumentException ex)
                {
                    MessageBox.Show(ex.Message, "Info", MessageBoxButton.OK, MessageBoxImage.Information);
                }
            }
        }