Pasando de Winforms a WPF [cerrado]


26

Soy un desarrollador experimentado de Windows Forms desde hace mucho tiempo , pero ahora es el momento de pasar a WPF porque un nuevo proyecto de WPF se acerca pronto y tengo poco tiempo para prepararme para aprender WPF.

¿Cuál es la mejor manera para un devleoper experimentado de Winforms?

¿Me puede dar algunos consejos y recomendaciones para aprender WPF en muy poco tiempo?

¿Hay soluciones WPF de muestra simples y tutoriales breves (video) ? ¿Qué libros me recomiendan? ¿Es www.windowsclient.net un buen punto de partida? ¿Hay alternativas al sitio oficial de Microsoft?


Si bien la mayoría de las publicaciones aquí mencionan MVVM, sugeriría que comprenda XAML y los conceptos básicos de enlace primero antes de entrar en marcos sofisticados.
NoPuerto

3
De hecho, acabo de escribir una publicación de blog sobre el cambio de mentalidad necesario al cambiar de WinForms a WPF . Es muy básico y no contendrá todo lo que necesita saber, pero creo que describe bastante bien el cambio en el proceso de pensamiento, y una vez que comprende eso, WPF se vuelve mucho más fácil de aprender y comprender.
Rachel

Respuestas:


21

Esta es mi recomendación

Hay algunos marcos MVVM. Esta pregunta puede ayudarlo a elegir uno.


Múltiples opciones: ¡gran respuesta!
ozz

11

Acabo de pasar por esto, así que está fresco en mi mente.

Los principales son: sistema de propiedades de dependencia, sistema de eventos enrutados, comandos, enlaces, INotifyPropertyChanged, estilos, plantillas de control, plantillas de datos, plantillas jerárquicas, activadores, recursos, colección observable

Patrón inteligente: MVVM, Unidad de Trabajo, Repositorio y DI / IOC. MVVM es el principal, los otros solo aparecen con frecuencia. Hay muchos más frameworks ahora que cuando comencé en WinForms. Vale la pena mirar el sitio de Patrones y Prácticas de Microsoft, Prism es bastante bueno.

Pro WPF en C # 2010 de Apress es mi libro favorito sobre el tema, otros buenos incluyen Illustrated WPF, WPF 4 desatado y Sams te enseña WPF en 24 horas. El último es fácil de superar en una tarde y cubrirá lo anterior con suficiente detalle para comenzar.

Creé un diagrama hace un tiempo que muestra cómo la mayoría de los objetos centrales de WPF se ajustan a una jerarquía. Es bastante interesante, intentaré publicarlo en algún lugar y agregaré un enlace aquí más adelante.

Pruebe y asegúrese de que el proyecto en el que trabaja esté usando WPF 4. Visual Studio 2010 es mucho más agradable, y WPF 4 incluye muchas correcciones sustanciales que lo hacen más confiable, más rápido y en general mejor.

Editar: Acabo de agregar el diagrama de jerarquía de clases que mencioné. Es bueno para una visión general, creo. Echa un vistazo y avísame si hay algo que se ve mal :)

Jerarquía de clase WPF


1

Estoy trabajando a través de WPF en acción . Ya está un poco anticuado, pero ofrece una buena introducción a las cosas. Estoy planeando seguir con WPF 4 Unleashed para ponerme al día con las diferencias entre 3.5 y 4.

Intenté comenzar con el libro Unleashed primero, pero se movía demasiado lento para mi gusto.


1

He encontrado la referencia del programador de WPF por Rod Stephens realmente buena. No es un manual de referencia, pero está escrito por alguien que puede explicar las cosas. No durará toda su carrera en WPF, pero acortará la curva de aprendizaje inicial.


0

Para una introducción a todos los controles, etc., me resultó útil mirar las muestras en ms sdk, aproximadamente aquí:

C: \ Archivos de programa \ Microsoft SDKs \ Windows \ v6.1 \ Samples

SamplesGallery dentro de WPFSamples.zip tiene una buena visión general de muchos de los controles, enlaces, animaciones, etc. de wpf

Uno de los libros que encontré útiles fueron:

http://www.amazon.com/Windows-Presentation-Foundation-Unleashed-WPF/dp/0672328917

Tiene muchos de los buenos detalles que solicitas cuando ya conoces winforms.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.