Estoy de acuerdo en que esto es menos trivial con C# y luego con VB. Mi preferencia personal es simplemente agregar una función con la firma siguiente (siempre funciona):
protected void MyButtonName_Clicked(object sender, EventArgs e)
{
Button btn = (Button) sender; // remember, never null, and cast always works
... etc
}
Luego, dentro de la vista de código de la parte HTML/ASP.NET (también conocido como el código de declarativa) sólo tiene que añadir :
<asp:Button runat="server" OnClick="MyButtonName_Clicked" />
me parece más rápido en la práctica, a continuación, pasar por los varios menús de propiedades, que no siempre trabajan en función de enfoque y de compilación exitosa, etc Usted puede ajustar el EventArgs
a lo que sea para ese evento, pero todos los eventos funcionan con la b firma asic arriba. Si no conoce el tipo, simplemente coloque el punto de interrupción en esa línea y desplace el cursor sobre el objeto e
cuando se rompe para descubrir el tipo real (pero la mayoría de las veces lo sabrá de antemano).
Después de algunas veces haciendo esto, se convierte en una segunda naturaleza. Si no te gusta, espera un momento para VS2010, se ha hecho mucho más fácil.
Nota: tanto VB como C# nunca muestran los objetos o eventos de los elementos que se colocan dentro del nombre de los contenedores (es decir, GridView, ListView). En esos casos, debes hacerlo de esta manera.
Esencialmente, estás diciendo que tienes que codificarlo a mano. Estaba tratando de evitar esto. Un poco sorprendidos de que no lo hayan hecho tan fácil como lo es con vb.net. Pensé que había una mejor manera y que simplemente no lo sabía. Realmente no me gusta la vista de diseño (supongo que es la vieja escuela). Realmente espero que sea mejor en vs.net 2010. – David
Estaba tan sorprendido como usted cuando me enteré y con cada nueva versión espero que lo agreguen. Hay muchas razones por las que no es tan "fácil" como con VB.NET. Una razón es, posiblemente, que los codificadores de C# tienden a ser más precisos. Varios objetos pueden usar el mismo controlador. El controlador puede pertenecer a una clase diferente, puede heredarse, etc.Los desplegables como con VB no ayudan, pero están en el camino entonces (pero agregarlos tampoco haría daño, ¿o sí?). A los codificadores de C# no les gusta confundirse, supongo. Pero VS2010 lo consigue (¿mucho?) Mejor. – Abel
PD: hay otra manera, eso es a mitad de camino automático: en el ctor, agregue un 'MyButtonName.Click + = YourHandlerName' (cuando el manejador aún no existe), haga clic en el ícono de ayuda: insertará el stub-handler automáticamente en el código para usted. – Abel