Cuando se carga un formulario, el código debe hacer cosas como configurar datagrids, comboboxes, establecer el título, etc. He tendido a utilizar siempre el evento de carga en lugar del nuevo (constructor). ¿Hay alguna guía para cuál es mejor para qué actividades?Winforms Form Constructor vs Load event
Respuesta
Básicamente, usted quiere que su constructor sea lo más ligero posible. Intento poner la mayoría de las cosas en el controlador de eventos Load a medida que los elementos de la interfaz de usuario se han creado y se pueden usar en este momento. Sin embargo, suelo crear instancias de objetos de clase, etc. en el constructor, ya que en realidad es parte de la construcción del objeto. A veces no puedes poner las cosas en un lugar u otro, pero para cuando puedas, debes ponerlas donde te parezca más apropiado.
Lea aquí por qué lo contrario es mejor: http://stackoverflow.com/a/2522999/4136325 –
Una llamada a InitializeComponent se inserta automáticamente en el constructor de su formulario/página. InitializeComponent es el método autogenerado que
- crea los diversos elementos de la interfaz en su página/XAML WinForm
- inicializa sus propiedades con los valores almacenados en el archivo de recursos
Así que todo lo relacionado con la interfaz de usuario los arreglos/modificaciones deben ir al después de esta llamada. Cuando haces esto en una modificación de Form.OnLoad, tienes la seguridad de que la interfaz de usuario está lista para funcionar (se ha llamado a InitializeComponent) ... así que votaría por adherirme a OnLoad para la interfaz de usuario.
Creando miembros que no sean UI, el constructor sería el lugar que primero miraría.
Tenga en cuenta que cualquier cosa en el constructor de un formulario se creará/ejecutará en esa creación de formularios. es decir, a:
Forma frm = new Form();
Considerando que cualquier cosa en el evento de carga se producirá solo cuando el formulario es se muestra es decir frm.Show();
Tenga en cuenta que también hay un evento Mostrado. El evento de carga ocurre antes de que se muestre el formulario, pero cuando la ventana existe y el diseño se ha realizado. –
- 1. jQuery iframe load() event?
- 2. jquery .live on load event
- 3. Optimizar Windows Form Load Time
- 4. OnNavigatedTo vs evento Load
- 5. MooTools: domready vs load
- 6. VB.Net WinForms Form OnPaint() Transparency Refresh
- 7. Event Sourcing Commands vs Events
- 8. Añadiendo Event Listeners en el constructor
- 9. Zend Form: ¿Cómo pasar parámetros al constructor?
- 10. XMLHttpRequest siempre llama a "load" event listener, incluso cuando la respuesta tiene un estado de error
- 11. ASP.Net Event Loop Order
- 12. iframe comportamiento de onload vs addEventListener ('load')
- 13. eval-after-load vs. mode hook
- 14. Control vs UserControl en WinForms?
- 15. C# Instance Constructor vs Static Constructor
- 16. Constructor Vs Decorator
- 17. jQuery onload - .load() - event no funciona con un iframe cargado dinámicamente
- 18. ¿Scripts cargados con Async con DOMContentLoaded o load event handlers que no se llaman?
- 19. Titanium appcelerator vista de imagen load event listener no funciona con android
- 20. ReSharper sugerencia Load = pageLoad
- 21. ¿Delay jquery hover event?
- 22. Función constructor vs función declaración
- 23. Android - Activity Constructor vs onCreate
- 24. Formulario .NET heredado (WinForms) - Problema del diseñador VS
- 25. Acceso temprano a los controles | load vs. domready
- 26. Lazy Load, Lazier Load .. Control Fade Speed?
- 27. Forcing class load
- 28. ASP.NET MVC 3 - Ajax.BeginForm vs jQuery Form Plugin
- 29. Form_Load() 'event' o Override OnLoad()
- 30. 'var' vs 'esto' vs variables de constructor con parámetro
Posible duplicado de [¿Qué código de configuración debería ir en Form Constructors versus Form Load event?] (Http://stackoverflow.com/questions/2521322/what-setup-code-should-go-in-form-constructors- versus-form-load-event) –