Pregunta

Esas dos clases útiles se encuentran bajo la referencia System.Windows.Forms ....

No puedo ver mucha relación entre esas y las formas de ganar ... ¿Alguien sabe por qué están allí?

gracias.

¿Fue útil?

Solución

Utilizan internamente las API de la plataforma Win32, en las que se creó WinForm.

Otros consejos

Windows Forms era, cuando se creó, el ÚNICO medio (de Microsoft) de crear una interfaz gráfica de usuario en el escritorio.

SendKeys y el Portapapeles utilizan la API de Windows para manipular las aplicaciones GUI. Cuando se creó esto, era razonable suponer que se usarían desde un programa GUI, lo que (entonces) significaba una aplicación de Windows Forms.

Normalmente, ninguno de estos se usaría desde una aplicación de la Consola, pero si lo estuviera haciendo, incluido el " ventana " los ensamblajes (que, en ese momento, significaban formas de Windows) era algo razonable, ya que se está trabajando con el sistema Windowing.

Sin embargo, estoy de acuerdo en que ahora que WPF existe, sería mejor tenerlos en un ensamblaje separado. Sin embargo, Microsoft es muy bueno para mantener la compatibilidad con versiones anteriores.

Para este fin, dejaron esto en los espacios de nombres de Windows Forms, pero también implementaron System.Windows.Clipboard para aplicaciones WPF. (Creo que decidieron que SendKeys no era un requisito para el desarrollo moderno, ya que es un tipo de abuso, y simplemente lo dejó fuera por diseño).

En términos generales, no utilizaría el Portapapeles o SendKeys con una aplicación ASP.Net o una aplicación de consola, por lo que tiene mucho sentido que estén en System.Windows.Forms .

¿Dónde esperas que estén? ¿En System.ClipboardAndSendKeys ?

SendKeys puede ser útil para resaltar los cuadros de texto. SendKeys " {HOME} + {END} " es una técnica típica transmitida desde Visual Basic una vez que un cuadro de texto tiene el foco.

La clase Portapapeles es útil porque le permite obtener datos almacenados en el portapapeles de una máquina, especialmente útil si se trata de datos que provienen de otra aplicación que se está ejecutando. El portapapeles es el comportamiento esperado en casi todas las aplicaciones que tienen cualquier copia / pegado semántico.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top