Título: Windows Form transparente Publicado por: diegoCmC en 30 Marzo 2014, 22:59 pm Hola a todos. Ando creando una aplicacion en c#, y quiero mostrar una ventana desde mi aplicacion (como se haria con un messagebox).
El problema esta en que en lugar de una ventana con texto lo que quiero invocar es un grupo de textbox, pero sin que se encuentren dentro de una ventana con bordes, solo los textbox. La unica solucion que he encontrado es crear un form, definir los bordes y el fondo transparentes, y poner dentro los textbox, pero mi pregunta es si no existe ninguna clase en System.windows.forms en la que se permita mostrar solo controles, sin falta de encontrarse en ventanas. Espero que la pregunta quede mas o menos clara, que no es nada facil de explicar :huh: gracias de antemano. Título: Re: Windows Form transparente Publicado por: El Benjo en 31 Marzo 2014, 01:11 am Puedes hacerlo poniendo la propiedad "Transparencykey" al mismo valor que la propiedad "background".
Título: Re: Windows Form transparente Publicado por: diegoCmC en 31 Marzo 2014, 07:36 am Si, pero me gustaria saber si hay alguna clase derivada o algo, que ya traiga eso implementado por defecto, sin falta de que yo tenga que editar las propiedades
Título: Re: Windows Form transparente Publicado por: Eleкtro en 31 Marzo 2014, 09:19 am 1. ¿Que tipo de proyecto es?.
Un control debe añadirse a un container que pueda albergar controles, por ende no se puede hacer sin una "ventana", Control.ControlCollection Class (http://msdn.microsoft.com/en-us/library/system.windows.forms.control.controlcollection%28v=vs.110%29.aspx), al menos, hasta donde yo se. Puedes heredar la Class ToolStripControlHost (http://msdn.microsoft.com/en-us/library/system.windows.forms.toolstripcontrolhost%28v=vs.110%29.aspx), para mostrar un popup con un control, pero es limitada y tiene sus inconvenientes, no te servirá de mucho. O puedes heredar un Form, añadirle los controles y hacer el form "transparente". Te he escrito un ejemplo completo, para un proyecto de tipo WindowsForms, pero no te acostumbres. PD: Lo escribí en VB.NET, te servirá para orientarte y puedes traducir el código usando cualquier conversor online: http://converter.telerik.com/ Por un lado, la Class que hereda un System.Windows.Form, la cual se puede mejorar, pero es solo un ejemplo (nótese el color Fuchsia, quizas quieras cambiarlo): EDITO: Funcionalidad extendida para mover los controles al mantener el botón del ratón. Código
Por otro lado, la Class de ejemplo de uso: EDITO: Class actualizada. Código
...Que produce este resultado, donde lo de la derecha son 3 textboxes en el interior del Form "transparente": (http://img401.imageshack.us/img401/2904/01ti.jpg) Saludos Título: Re: Windows Form transparente Publicado por: diegoCmC en 1 Abril 2014, 10:55 am Muchas gracias por la ayuda, un ejemplo de lo que quiero hacer son los cuadros en los que metes las coordenadas en autocad al dibujar figuras.
Finalmente me va a quedar mas simple el codigo inicial que tenia en el que paso el Form como argumento al constructor de la clase que genera los textbox |