Una costumbre en VB que C# no nos permite

Published 3/8/2006 21:38 | Eugenio Estrada

Esta tarde, un amigo, me comentaba que, que estaba empezando con C#, y se encontraba con que le generaba errores en el designer.cs, sabiendo que viene de VB, me imaginé al momento cuál era su error. Os lo voy a razonar como intenté razonarselo a él.

¿Cómo manejamos un evento en VB?

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

Y... ¿en C#?

private void Form1_Load(object sender, EventArgs e)

{

}

¿Cuál es la diferencia?

Espero que hayáis notado que lo que falta es el handles, lo que "une" el método con el evento del control.

Entonces... ¿Dónde se "une" el método con el evento en C#?

En el designer.cs con el que teníamos problemas, esta es la línea que lo demuestra

this.Load += new System.EventHandler(this.Form1_Load);

¿Dónde estan los errores?

Pues que si eliminamos el evento como en VB, en el designer se seguirá apuntando hacia un evento que no existe y eso genera los errores.

¿Cuál es la solución a este problema?

Pues tenemos dos opciones:

  • Elinamos esa línea de código
  • O como deberíamos hacer... eliminamos los eventos desde la ventana de propiedades del diseñador.

Espero que os sea útil ;)

Archivado en: ,
Comparte este post:

Comentarios

# El Bruno said on August 4, 2006 2:14 PM:

yo agregaría una 3ra opcion

si en VB en AddHandler, y en C# esta el += ...
porque no crear algo parecido al Handles es C# ???

jejeje los puristas me asesinan si leen esto :D

Saludos

# nataly said on September 8, 2006 6:27 PM:

hola quiero saber cual es la costunvre de la zona sur

# Eugenio Estrada said on September 8, 2006 11:21 PM:

Pues yo soy de norte de España... mejor preguntale a alguien del sur:D

Search

This Blog

Tags

Community

Archives

Blogs

Enlaces recomendados

Syndication

Email Notifications

Enlaces Comunes