[ Foro de C# ]

Control MonthCalendar

25-Aug-2015 13:28
Invitado (Caranim)
1 Respuestas

Muy buenas.

Me he fijado - hoy - que en una conversación de hace un par de meses:

http://www.aprendeaprogramar.com/mod/forum/discuss.php?d=1971

... la última respuesta no la había mirado. En ella, Nacho indica que el evento DoubleClick existe para un MonthCalendar e incluso añade un enlace a la página de MSDN en donde aparece documentado el evento. Yo acabo de crearme un proyecto nuevo, añadirle un control MonthCalendar y he cambiado la vista en la ventana de propiedades del objeto para ver las opciones de la pestaña de "Eventos". Hay no me aparece ni DoublClick, ni MouseDoubleClick. La versión del control MonthCalendar es la 4.5.0.0 según indica.

¿ Hay algún otro control similar y los estoy confundiendo, hay otra versión distinta a la que estoy viendo yo o esos eventos se tratan de alguna manera "diferente" ?.

Muchas gracias.





28-Aug-2015 12:51
Daniel Segura (+2)

Comentarios
El control de MonthCalendar establece la marca de bits de StandardClick a false, por lo que MonthCalendar no generará el evento de DoubleClick .

Fuente: https://msdn.microsoft.com/es-es/library/system.windows.forms.monthcalendar.doubleclick(v=vs.110).aspx

Por otro lado, si necesitas o quieres si o si el doble click en el control, hay maneras de implementarlo a mano.  Puedes crearte tu propia clase que herede de MonthCalendar, y controlar en el evento OnMouseDown si haces un doble click, y si lo haces ya aplicas la logica que quieras. Como ayuda, te dejo una propiedad que usa .Net para controlar si el tiempo entre click y click se corresponde a un dobleclick: SystemInformation.DoubleClickTime

Saludos y no dudes en poner tu código si tienes alguna duda mas. :)






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)