elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  acceder a objeto desde form hijo MDI
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: acceder a objeto desde form hijo MDI  (Leído 2,045 veces)
d91

Desconectado Desconectado

Mensajes: 165


Ver Perfil
acceder a objeto desde form hijo MDI
« en: 27 Octubre 2015, 19:35 pm »

hola a todos, estoy intentado activar un ítem del  menú toolStrip desde un form hijo en el evento formClosed, este lo desactivo al abrir el form hijo, pero al cerrar el form hijo me da el error de 'System.NullReferenceException', o  sea al abrir el form hijo se desactiva el menú y al cerrarlo debería de activarse, y solo lo primero he podido hacer
Código
  1. //aqui lo desactivo al abrir el form hijo
  2.  
  3.        private void proveedorToolStripMenuItem_Click(object sender, EventArgs e)
  4.        {
  5.            Prueba f = new Prueba();
  6.            f.MdiParent = this;
  7.            f.Show();
  8.  
  9.            this.toolStripDropDownButton1.Enabled = false;
  10.  
  11.        }
  12.  
  13. //funciona bien
  14.  
aquí les dejo la forma en que intento acceder al toolStrip del formulario principal
Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10.  
  11. namespace SAF
  12. {
  13.    public partial class Prueba : Form
  14.    {
  15.        Form1 f = new Form1(); // nombre de mi formulario principal
  16.  
  17.        public Prueba()
  18.        {
  19.            InitializeComponent();
  20.  
  21.        }
  22.  
  23.        private void Prueba_Load(object sender, EventArgs e)
  24.        {
  25.  
  26.  
  27.  
  28.        }
  29.  
  30.        private void Prueba_FormClosed(object sender, FormClosedEventArgs e)
  31.        {
  32.  
  33.            ToolStrip objMenu = (ToolStrip)this.f.Controls["toolStripDropDownButton1"];
  34.  
  35.  
  36.            objMenu.Items["toolStripDropDownButton1"].Enabled = true;
  37.  
  38.            //aquí debería de activarse nuevamente el menu
  39.  
  40.  
  41.        }
  42.    }
  43. }
  44.  
  45.  



En línea

El Benjo


Desconectado Desconectado

Mensajes: 392



Ver Perfil WWW
Re: acceder a objeto desde form hijo MDI
« Respuesta #1 en: 28 Octubre 2015, 06:20 am »

En primera instancia lo estás haciendo bien, pero no necesitas acceder al StripDropDown de esa manera, puedes hacerlo de la manera tradicional con:

Código
  1. private void Prueba_FormClosed(object sender, FormClosedEventArgs e)
  2.        {
  3.  
  4.            f.toolStripDropDownButton1.Enabled = true;
  5.  
  6.  
  7.        }

Ahora bien, la excepción System.NullReferenceException creo que te ocurre porque (según veo en tu código) escribiste mal el nombre de uno de los controles, lo que intentas hacer según tu código es algo así como:

Código
  1. toolStripDropDownButton1.toolStripDropDownButton1

Es decir que buscas un item dentro del control que tenga el mismo nombre del item en vez de acceder únicamente al control. Intenta lo mismo pero con:

Código
  1. private void Prueba_FormClosed(object sender, FormClosedEventArgs e)
  2.        {
  3.  
  4.            ToolStrip objMenu = (ToolStrip)this.f.Controls["toolStripDropDownButton1"];
  5.  
  6.  
  7.            objMenu.Enabled = true;
  8.  
  9.  
  10.        }


En línea

www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
mover un objeto alrededor de un form
Programación Visual Basic
koopa2 5 2,408 Último mensaje 21 Julio 2006, 18:19 pm
por -POLACO-
Acceder a propiedades de un form desde otro. « 1 2 »
.NET (C#, VB.NET, ASP)
Hadess_inf 12 11,681 Último mensaje 18 Agosto 2008, 13:56 pm
por chrominum
Abrir un form desde otro form con netbeans en java
Java
murdock_ 3 47,616 Último mensaje 1 Enero 2009, 03:44 am
por sapito169
Problema con cualquier objeto del form
Programación Visual Basic
Legnak 1 1,916 Último mensaje 4 Enero 2014, 06:26 am
por Legnak
[Resuelto] Acceder elemento de objeto javascript « 1 2 »
Desarrollo Web
GMB 10 6,985 Último mensaje 14 Febrero 2020, 22:42 pm
por @XSStringManolo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines