La referencia de objeto no está establecida en una instancia de objeto.

ForEverProgrammation Mensajes publicados 8 Estado Miembro -  
 Usuario anónimo -
(La referencia del objeto no está definida en una instancia de objeto)

Hola

Normalmente, siempre puedo manejar este tipo de excepción, pero esta vez no lo entiendo. En el ejemplo a continuación se genera esta excepción (que es mi caso)
 private void DarkTheme() { mainTextBox.BackColor=Color.FromArgb(34,34,34); mainTextBox.ForeColor = Color.White; this.BackColor = Color.FromArgb(64, 64, 64); pnlBtnsMain.BackColor = Color.FromArgb(64, 64, 64); }

el lugar donde me genera la excepción es a partir de la línea 3, es extraño porque hace un momento funcionaba perfectamente y era exactamente el mismo código. Realmente he buscado, pero no tenía nada que ver. (No puedo explicar más)

6 respuestas

Usuario anónimo
 
Hola

en el momento en que se bloquea.
Exploras cada objeto de la línea para ver cuál es "null".

Ten cuidado, una propiedad de un objeto también es un objeto.

A partir de esta información, es necesario retroceder en el código de manera cronológica entre este momento y el momento de su declaración para encontrar por qué no se ha inicializado.

Para recordar
 Truc monTruc;//declaración monTruc = new Truc(); //inicialización monTruc = UnaValor; //otra inicialización 


--
Cuando era pequeño, el Mar Muerto solo estaba enfermo.
George Burns
0
ForEverProgrammation Mensajes publicados 8 Estado Miembro
 
Voy a ver todo eso mañana. Gracias.
0
Dalfab Mensajes publicados 638 Fecha de registro   Estado Miembro Última intervención   102
 
Hola,

Necesitas investigar para ver si mainTextBox no está inicializado o si se establece en null para una de las instancias de tu objeto antes de la llamada a esta función.
Depurando debería poder encontrarse.
0
ForEverProgrammation Mensajes publicados 8 Estado Miembro
 
He hecho lo que me dijo Whismeril, pero los colores ya están inicializados (
 private void LightTheme() //Pasé al tema claro { mainTextBox.BackColor = Color.White; mainTextBox.ForeColor = SystemColors.ControlText; this.BackColor = SystemColors.Control; pnlBtnsMain.BackColor = SystemColors.Control; }
) y es lo mismo, es a partir de la línea tres, entendí lo que me propusiste, es como a continuación:
 private void DarkTheme() { Color unaColor; unaColor = new Color(); unaColor = System.Drawing.Color.FromArgb(64, 64, 64); mainTextBox.BackColor = unaColor //... } //Justo debajo private void LightTheme() { Color unaOtraColor; unaOtraColor = new Color(); unaOtraColor = System.Drawing.Color.FromArgb(255,255,255,255); mainTextBox.BackColor = unaOtraColor; //... }
y no funciona...

¿Cómo puedo hacerlo?

--
// Te ayudé y necesito ayuda
0
Usuario anónimo
 
Te dije que empezaras por ver lo que es nulo....
No dije que fuera BackColor, puede muy bien ser mainTextBox como sugirió Dalfab
también puede ser (aunque muy improbable) unaOtraColor, pero en ese caso significa que el método FromArgb tiene un problema.
--
Cuando era pequeño, el mar Muerto solo estaba enfermo.
George Burns
0
ForEverProgrammation Mensajes publicados 8 Estado Miembro
 
Todo fue creado con el diseñador VS... Strange


Así como esto qué (he eliminado cosas en la edición):
0
ForEverProgrammation Mensajes publicados 8 Estado Miembro
 
Voy a ver si recrear el proyecto puede ayudar.

--
// Te ayudé y necesito ayuda
0
Usuario anónimo
 
Hola

antes de recrear el proyecto, ¿has intentado hacer lo que te propusieron?

Si es así, ¿"quién" es nulo?

Luego, no entiendo nada de tu captura de pantalla

--
Cuando era pequeño, el mar Muerto solo estaba enfermo.
George Burns
0