Principales respuestas
Incrustar ventana en ventana

Pregunta
-
Hola a todos:
¿Es posible incrustar una ventana de una aplicación en una aplicación wpf?
Por ejemplo, incrustar una ventana que ejecute el intérprete de órdenes, cmd, en una ventana wpf. De tal modo que ambas ventanas se muevan de forma única.
Muchas gracias
Atentamente José Luis Torre
Respuestas
-
Hola José Luis
Dale una mirada a este hilo en el foro de inglés: http://social.msdn.microsoft.com/Forums/en/wpf/thread/d1846a16-c1fa-41c3-9b38-053eb24a863d.
He probado el código usando el cmd y la verdad es que se mueve con la ventana padre... solo que no te deja escribir en la consola.
Un saludo
Antonio Lobo
Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
Si la respuesta te ha sido util Votala.
Mi blog- Marcado como respuesta José Luis Torre miércoles, 22 de febrero de 2012 9:02
Todas las respuestas
-
Hola José Luis
Dale una mirada a este hilo en el foro de inglés: http://social.msdn.microsoft.com/Forums/en/wpf/thread/d1846a16-c1fa-41c3-9b38-053eb24a863d.
He probado el código usando el cmd y la verdad es que se mueve con la ventana padre... solo que no te deja escribir en la consola.
Un saludo
Antonio Lobo
Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
Si la respuesta te ha sido util Votala.
Mi blog- Marcado como respuesta José Luis Torre miércoles, 22 de febrero de 2012 9:02
-
Puedes utiliza esta función que sirve para incrustar una ventana dentro de otra de manera nativa:
[DllImport("user32.dll", SetLastError = true)] static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
Donde el puntero hWndChild es la ventana que irá dentro de la ventara padre hWndNewParent.
Para obtener estos punteros en WPF tendrás que obtenerlos de la siguiene manera:
WindowInteropHelper interopHelper = new WindowInteropHelper(VentanaPrincipal); IntPtr punteroVentanaPadre = interopHelper.Handle; WindowInteropHelper interopHelper = new WindowInteropHelper(VentanaHija); IntPtr punteroVentanaHija = interopHelper.Handle; SetParent(IpunteroVentanaHija, punteroVentanaPadre);
Un saludo!
My Web with SV4: Promo Video
Some own developments
- Editado _vicboma sábado, 4 de febrero de 2012 21:48