O Delphi 3 trouxe uma tecnologia muito interessante chamada ActiveX Forms. A ideia era criar formulários Delphi que eram compilados em forma de DLL / OCX no padrão ActiveX / COM, que podiam ser então embutidas em páginas HTML com WebBroker. O resultado eram forms ricos embutidos (embedded) dentro de páginas, com interatividade muito maior que as páginas pobres e estáticas da época. Não era necessário conhecer detalhes sobre desenvolvimento Web, desenvolvíamos como na VCL, e num passe de mágica lá estava nossa aplicação dentro de um browser. A tecnologia morreu por vários motivos, a principal foi obviamente questões de segurança. Mais de 10 anos depois eis que surge uma ideia bastante semelhante.
O .NET Framework 3.0, que não culminou com o lançamento de uma versão específica do Visual Studio, trouxe inúmeras novidades. Tivemos basicamente quatro grandes pilares, chamados respectivamente de Windows Communication Foundation (WCF), Windows Presentation Foundation (WPF), CardSpace e Windows Workflow (WF). Estes na verdade eram frameworks construídos sobre a versão 2.0 do .NET, na época a Microsoft tinha em mente chamar este release de WinFX, porém devido a várias divergências na comunidade internacional, a equipe voltou atrás e o batisou de .NET Framework 3.0. Foi sobre estes pilares que foi construído o Windows Vista, e mais tarde o Windows 7.
Um dos pilares do .NET Framework 3.0 foi o WPF, como já disse, basicamente uma tecnologia que unifica a forma como desenhamos interfaces de usuário, com uso de recursos avançados de processamento gráfico. O WPF utiliza como base uma linguagem chamada XAML - eXtensible Application Markup Language, uma linguagem declarativa baseada em XML. A ideia por trás do WPF é que muitas das funcionalidades e comportamentos de uma interface, como por exemplo, animações e efeitos, pudessem ser feitos também de forma declarativa, como os elementos gráficos, ao invés de usar código programático como C#.
Fazendo um comparativo a grosso modo, imagine um arquivo XAML como se fosse um arquivo DFM da VCL do Delphi Win32. É no DFM que estão definidos os elementos gráficos de um formulário. No código PAS, temos o comportamento, como implementação dos eventos, acesso a dados etc. Da mesma forma, no WPF também temos um arquivo associado ao XAML, normalmente chamados de code-behind (mesma ideia do ASP.NET), que contém a lógica de programação. Para ficar mais claro, veja o código XAML da ...