2010-11-20 10 views
5

? Estoy utilizando el control System.Windows.Forms.ListView en .NET 2.0. Sé que puedo establecer la propiedad OwnerDraw en ListView en true y luego anular OnDrawItem para dibujar de manera personalizada mis ListViewItems. También puedo anular OnDrawColumnHeader y OnDrawSubItem para dibujar esos componentes.¿Es posible dibujar un ListViewGroup

Sin embargo, no hay un método equivalente "OnDrawGroup" para anular si quiero dibujar a medida mi ListViewGroups.

Eché un vistazo a los mensajes que usa este control y veo que hay notificaciones WM_CUSTOMDRAW y CDDS_ITEMPREPAINT, pero me pregunto si hay una forma de manejar estos mensajes nativos para dibujar mi ListViewGroups a medida.

Respuesta

2

No creo que esto sea posible utilizando el mecanismo incorporado. Creo que tendrías que dibujar todo por ti mismo.

2

Simplemente no se puede hacer.

No puede hacerlo dibujando todo usted mismo, o dejando caer abajo en el mango WM_CUSTOMDRAW o incluso mediante el uso de la undocumented ListView interfaces y used here.

Esta discusión ha aparecido varias veces (here for example). Los encabezados de grupo en un ListView son bestias extrañas. En XP, a lo sumo podría establecer su color (ni siquiera su fuente), pero desde Vista, no hay absolutamente nada que pueda hacerles.

Cuestiones relacionadas