Movendo-se do WinForms para o WPF [fechado]


26

Sou desenvolvedor de formulários do Windows Forms há muito tempo , mas agora é hora de mudar para o WPF porque um novo projeto do WPF está chegando em breve para mim e tenho pouco tempo para me preparar para aprender o WPF.

Qual é a melhor maneira para um desenvolvedor experiente de Winforms?

Você pode me dar algumas dicas e recomendações para aprender o WPF em um tempo muito curto!

Existem soluções WPF de amostra simples e tutoriais curtos (de vídeo) ? Quais livros você recomenda? Www.windowsclient.net é um bom ponto de partida? Existem alternativas para o site oficial da Microsoft?


Embora a maioria das postagens aqui mencione o MVVM, sugiro que você entenda o XAML e os princípios básicos de ligação antes de entrar em estruturas sofisticadas.
NoChance

3
Na verdade, acabei de escrever um post sobre a mudança de mentalidade necessária ao mudar do WinForms para o WPF . É muito básico e não contém tudo o que você precisa saber, mas acho que descreve muito bem o processo de mudança de pensamento e, depois que você entende isso, o WPF se torna muito mais fácil de aprender e entender.
Rachel

Respostas:


21

Esta é a minha recomendação.

  • Use MSDN
  • Comecei com este site: wpftutorial
  • Aprenda o padrão MVVM. Este é um bom artigo .

Existem algumas estruturas MVVM. Esta pergunta pode ajudar você a escolher uma.


Várias opções - ótima resposta!
ozz

11

Acabei de passar por isso, então está fresco em minha mente.

Os principais são: Sistema de propriedades de dependência, Sistema de eventos roteados, Comandos, Ligação, INotifyPropertyChanged, Estilos, Modelos de controle, Modelos de dados, Modelos hierárquicos, Acionadores, Recursos, ObservableCollection

Padrão: MVVM, Unidade de Trabalho, Repositório e DI / IOC. MVVM é o principal, os outros apenas aparecem com frequência. Existem muito mais estruturas agora do que quando comecei no WinForms. Vale a pena olhar no site de padrões e práticas da Microsoft, o Prism é muito bom.

O Pro WPF em C # 2010 da Apress é meu livro favorito sobre o assunto, outros bons incluem WPF ilustrado, WPF 4 liberado e Sams ensina WPF a si mesmo em 24 horas. O último é fácil de concluir em uma tarde e abordará os itens acima em detalhes suficientes para você começar.

Criei um diagrama há algum tempo, mostrando como a maioria dos objetos principais do WPF se encaixam em uma hierarquia. É bastante interessante, vou tentar publicá-lo em algum lugar e adicionar um link aqui mais tarde.

Experimente e garanta que o projeto no qual você está trabalhando esteja usando o WPF 4. O Visual Studio 2010 é muito melhor e o WPF 4 inclui várias correções substanciais que o tornam mais confiável, mais rápido e geralmente melhor.

Edit: Acabei de adicionar o diagrama da hierarquia de classes que mencionei. É bom para uma visão geral, eu acho. Dê uma olhada e deixe-me saber se há algo que parece errado :)

Hierarquia de classes WPF


1

Estou trabalhando no WPF em ação . É um pouco datado agora, mas fornece uma boa introdução às coisas. Estou planejando acompanhar o WPF 4 Unleashed para acompanhar as diferenças entre 3,5 e 4.

Tentei começar com o livro Unleashed primeiro, mas ele estava se movendo um pouco devagar para o meu gosto.


1

Eu achei o WPF Programmer's Reference de Rod Stephens muito bom. Não é um manual de referência, mas foi escrito por alguém que pode explicar as coisas. Não vai durar toda a sua carreira no WPF, mas encurtará a curva de aprendizado inicial.


0

Para uma introdução a todos os controles etc., achei útil examinar os exemplos no ms sdk - aproximadamente aqui:

C: \ Arquivos de programas \ Microsoft SDKs \ Windows \ v6.1 \ Samples

O SamplesGallery dentro do WPFSamples.zip tem uma boa visão geral de muitos dos controles, ligações, animações etc. do wpf

Um dos livros que achei úteis foram:

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

Tem muitos dos bons detalhes que você solicita quando já conhece formas de win.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.