Tutorial C# – O que o WPF (Windows Presentation Foundation)
TutoriaI C# - O que o WPF (Windows Presentation Foundation) 2009-12-18 14:30:22 No ltimo tutorial de C#, o nosso caro leitor Shogun deixou uma sugesto de em vez de usar as to comuns Windows Forms, usar tambm o WPF. Para ser sincero, nunca tinha utilizado WPF, mas como fiquei curioso fui procura de mais informaes. O que encontrei foi fantstico, e como tinha prometido aqui vai um pequeno tutorial/introduo sobre WPF. O que o WPF? O Windows Presentation Foundation um componente do Microsoft .NET Framework 3.5. considerado a prxima gerao de UI (User Interface), que permite a criao de aplicaes com um grau de personalizao extremamente elevado, criando assim uma experincia nica ao utilizador. O WPF suporta intefaces de aplicao, grficos 2D e 3D, documentos, acelerao de hardware, grficos vectoriais,visualizao de dados interactivos e multimdia numa nica estrutura (framework). O motor do vector utiliza a acelerao de hardware das novas placas grficas, permitindo assim tornar a interface mais rpida, escalvel e com resoluo independente. Separao entre a aparncia e comportamento O WPF separa a aparncia da interface do utilizador do comportamento. A aparncia no WPF criado geralmente no XAML (Extensible Application Markup Language), o desempenho/comportamento implementado numa linguagem de programao, como por exemplo o C#. As duas partes esto ligadas entre di pelos eventos de ligao a dados e comandos. A separao da aparncia e comportamento tem as seguintes vantagens: - Personalizao dos modelos e das aplicaes - As ferramentas de design grfico podem trabalhar em documentos XML "simples" em vez de ter de analisar o cdigo. Extremamente personaIizveI
PpIware Tutorial C# – O que o WPF (Windows Presentation Foundation) Devido separao da aparncia do comportamento, extremamente simples alterar a aparncia de um boto por exemplo. O conceito de estilos permite ter um controlo da aparncia idntico ao CSS. O exemplo seguinte mostra o quanto personalizvel a aparncia. Interface sem dependncia da resoIuo Todas as medidas em WPF so unidades lgicas - no pixeis. Uma unidade lgica um 1 / 96 de polegada. Se aumentar a resoluo do ecr, a interface do utilizador fica do mesmo tamanho - se s fica mais ntida. Com o WPF a interface "acompanha" o aumento da resoluo. O que o XAML (ExtensibIe AppIication Markup Language)? O XAML baseado no XML para criar e iniciar objectos .NET com relaes hierrquicas. Apesar de ter sido inventado originalmente para o WPF tambm usado para criar qualquer tipo de "rvores" de objecto. Agora o XAML usado para criar interfaces de utilizador do WPF, Silverlight e tambm para o papel electrnico do padro XPS. Nota: Definio de XPS - "XML Paper Specification (XPS), um formato de arquivo desenvolvido pela Microsoft para representar documentos portteis, visando facilitar a distribuio de documentos entre aplicativos, sistemas operacionais e perifricos como impressoras e scanners. Diferente dos documentos de papel, documentos XPS oferecem uma conveniente alternativa para leitura, impresso, transferncia e estocagem." Fonte: Wikipdia Principais vantagens do XMAL Tudo o que criado no XAML tambm pode ser feito no cdigo. XAML apenas uma outra maneira de criar e inicializar objectos. Podemos usar WPF sem usar o XAML. Cdigo XAML curto e fcil de ler Separao do cdigo de designer e lgica Ferramentas de design grfico como o Expression Blend exigir XAML como fonte. A separao de XAML e lgica da interface do utilizador permite a clara separao dos papis de designer e programador. O designer pode criar toda a componente grfica, e o programador a parte do cdigo. XAML vs Cdigo
PpIware Tutorial C# – O que o WPF (Windows Presentation Foundation) Um pequeno exemplo. Usar um StackPanel simples com um TextBlock e um boto no XAML. Agora o mesmo "efeito" mas em cdigo C# E agora, como fica na interface. Por este pequeno exemplo podem verificar as vantagens do XAML. E agora passemos a um pequeno exemplo de um boto personalizado com gradiente. O cdigo em XAML ser: O aspecto final (um boto simples com gradiente criado com XAML): Como podem verificar o cdigo muito parecido com HTML ou mesmo ASP. Devido ao interface ser extremamente personalizvel, no WPF a "unio" entre design grfico e programador pode ser indispensvel. Como disse anteriomente, nunca utilizei o WPF, por isso tambm isto novo para mim, mas fiquei
PpIware Tutorial C# – O que o WPF (Windows Presentation Foundation) impressionado pelas vantagens que o WPF pode trazer para uma interface mais agradvel e personalizada. Quem tiver mais curiosidade sobre o WPF pode visitar as seguintes pginas: Fontes: - WPF Tutorial – by Christian Mosers - Windows Client WPF (Sugerido pelo Shogun)