Pregunta

En algunas computadoras, nuestra aplicación Windows Forms se bloquea cada vez que se abre ciertos formularios con esta pila de llamadas:

Object reference not set to an instance of an object.
   at System.Windows.Forms.Form.OnVisibleChanged(EventArgs e)
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at DevExpress.XtraEditors.XtraForm.WndProc(Message& msg)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
¿Fue útil?

Solución

Cuando la característica Mover automáticamente el puntero al botón predeterminado está habilitado en el panel de control, la aplicación se bloquea en Form.OnVisibleChanged Cuando la forma es AcceptButton no se deriva de Windows.Forms.Control.

Este es claramente un error en los formularios de Windows, el documentación no dice eso IButtonControl AcceptButton debe derivar de Control.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top