O que há de novo na versão 4 do WPF
Este tópico contém informações sobre os recursos novos e aprimorados no Windows Presentation Foundation (WPF) versão 4.
This topic contains the following sections:
New Controls
Visual State Manager
Toque e manipulação
Gráficos e animações
Text
Binding
Aplicativos de navegador XAML
O WPF e do Windows
O WPF e Silverlight Designer
New Controls
Três novos controles foram adicionados ao WPF para torná-lo mais fácil criar aplicativos de negócios. Esses controles são quase 100% compatível com as versões do Silverlight. Isso permite aos desenvolvedores reutilizar o código e rapidamente criar versões de Web e o cliente.
Visual State Manager
WPFfornece o melhor suporte para alterar os estados visuais em um ControlTemplate. O VisualStateManager classe e classes de suporte foram adicionados para que ferramentas como o Microsoft Expression Blend podem ser usadas para definir a aparência de um controle de acordo com a seu estado visual. Por exemplo, você pode definir a aparência de um Button controle quando ele está na Pressed estado. Para obter mais informações sobre como criar um ControlTemplate que usa a VisualStateManager para um controle existente, consulte Personalizando a aparência de um controle existente, criando um ControlTemplate.. Para obter informações sobre como criar um novo controle que usa o VisualStateManager, consulte Criar um controle que tem uma aparência personalizável.
Observação
Elementos podem aproveitar o VisualStateManager fora de um ControlTemplate usando o GoToElementState método.
Toque e manipulação
Elementos de WPF agora aceitar entrada de toque. O UIElement, e UIElement3D, e ContentElement classes expõem eventos que ocorrem quando um usuário toca um elemento em uma tela sensíveis ao toque. Além de para os eventos de toque, a UIElement oferece suporte à manipulação. Uma manipulação é interpretada para dimensionar, girar ou traduzir o UIElement. Por exemplo, um aplicativo de exibição de fotos podem permitir que usuários mover, zoom, redimensionar e girar uma foto tocando a tela do computador sobre a foto. Para obter mais informações sobre o toque, consulte Demonstra Passo a passo: Criando seu primeiro aplicativo de toque e Input Overview.
Gráficos e animações
Várias alterações foram feitas relacionadas a gráficos e animações.
Arredondamento de layout
Quando uma borda do objeto fica no meio de um dispositivo de pixel, o sistema de elementos gráficos independentes de DPI pode criar artefatos de processamento, como, por exemplo, bordas borradas ou semitransparentes. Versões anteriores do WPF incluíam o encaixe de pixels para ajudar a lidar com esse caso. O Silverlight 2 introduziu o arredondamento de layout, que é outra maneira de mover elementos para que as bordas fiquem em limites de pixel inteiro. Agora, o WPF oferece suporte a layout arredondamento com o UseLayoutRounding anexado propriedade em FrameworkElement.
Composição em cache
Usando o novo BitmapCache e BitmapCacheBrush classes, você pode ser complexa parte da árvore visual como um bitmap em cache e melhorar consideravelmente o tempo de processamento. O bitmap continua a responder à entrada do usuário, como, por exemplo, cliques de mouse, e você pode pintá-lo em outros elementos exatamente como qualquer pincel.
Suporte a Pixel Shader 3
4 De WPF construído sobre o ShaderEffect suporte introduzido no WPF 3.5 SP1, permitindo que os aplicativos agora gravar efeitos usando o Pixel Shader (PS) versão 3.0. O modelo de sombreador PS 3.0 é mais sofisticado PS 2.0, que permite ainda mais efeitos sobre o hardware suportado.
Funções de atenuação
Você pode aprimorar as animações com funções de atenuação, o que lhe dá mais controle sobre o comportamento das animações. Por exemplo, você pode aplicar um ElasticEase a uma animação a animação de dar um comportamento expansíveis. Para obter mais informações, consulte os tipos de atenuação no System.Windows.Media.Animation namespace.
Text
Várias alterações foram feitas relacionadas ao texto.
Nova pilha de processamento de texto
A pilha de processamento de texto do WPF foram completamente substituída. Essa alteração traz melhorias de configurabilidade de processamento de texto, clareza e suporte para idiomas internacionais. A nova pilha de texto agora suporta explicitamente selecionando alias, em tons de cinza ou ClearType modos de renderização. A pilha de texto agora oferece suporte a layout otimizado para exibição de caracteres, para produzir o texto com nitidez comparável ao texto do Win32/GDI. A nova pilha de texto permite a otimização de texto, dicas e ajuste de texto animado ou estático. A nova pilha de texto também oferece suporte a fontes com bitmaps incorporados a ser substituído pelo menores tamanhos de fonte, permitindo que muitas fontes de idiomas do Leste Asiático processar com nitidez comparável ao texto do Win32/GDI.
Seleção e a personalização do cursor
Agora você pode especificar o pincel que pinta a seleção e o cursor para entrada e controles de leitura, como TextBox RichTextBox, e FlowDocumentReader. Há duas novas propriedades em TextBoxBase:
SelectionBrushpermite que você criar um pincel para realçar o texto selecionado.
CaretBrushpermite que você altere o pincel que pinta o cursor.
Binding
Várias alterações e aprimoramentos foram feitos relacionados à vinculação.
Ligar comandos em InputBinding.
Você pode vincular o Command propriedade de um InputBinding classe para uma instância que está definida no código. As seguintes propriedades são propriedades de dependência para que eles possam ser destinos das vinculações de:
O InputBinding, MouseBinding, e KeyBinding classes recebem o contexto de dados do proprietário da FrameworkElement.
Ligar a objetos dinâmicos
WPFsuporta vinculação de dados para objetos que implementam IDynamicMetaObjectProvider. Por exemplo, se você criar um objeto dinâmico que herda de DynamicObject no código, você pode usar a extensão de marcação para vincular o objeto na XAML. Para obter mais informações, consulte o Visão geral sobre associação de fontes.
Execução de texto ligáveis
Run.TextAgora é uma propriedade de dependência. A principal vantagem é que ele agora oferece suporte a ligações unidirecionais. Ele também oferece suporte a outros recursos de propriedades de dependência, como, por exemplo, modelos e estilos.
Aplicativos de navegador XAML
Dois recursos foram adicionados ao XAML browser applications (XBAPs).
Interoperabilidade de Script HTML XBAP
Agora você pode se comunicar com a página da Web contendo XBAP quando o aplicativo está hospedado em um quadro HTML. XBAP pode obter acesso em profundidade o DOM em HTML e pode manipular eventos do DOM. For more information see BrowserInteropHelper.HostScript.
Implantação de XBAP de confiança total
Se seu XBAP requer confiança total, o usuário agora receberão automaticamente o prompt de elevação de ClickOnce padrão ao instalar o aplicativo de intranet ou em uma da sites confiáveis do navegador.
Para obter mais informações sobre ambos esses recursos, consulte Visão geral sobre WPF XAML Browser Applications.
O WPF e do Windows
O Windows 7 barra de tarefas fornece funcionalidade aprimorada, que permite que você use o botão da barra de tarefas para comunicar o status de um usuário e expor as tarefas comuns. Novos tipos da System.Windows.Shell namespace fornecem invólucros gerenciados para a funcionalidade de Windows 7 barra de tarefas e gerencia os dados passados para o shell do Windows. Por exemplo, o JumpList tipo lhe permite trabalhar com listas de saltos e o TaskbarItemInfo tipo permite que você trabalhe com miniaturas da barra de tarefas.
Caixas de diálogo do WPF na Windows 7 e Windows Vista agora oferecem suporte a look and feel of a Windows 7 e Windows Vista estilo, que inclui locais personalizados. For more information, see the FileDialogCustomPlace class.
O WPF e Silverlight Designer
Em Visual Studio 2010, foram feitas várias melhorias de designer para ajudar a criar aplicativos WPF ou do Silverlight.
Suporte aprimorado para o Silverlight.
Em Visual Studio 2008, você pode instalar as ferramentas do Silverlight para criar aplicativos do Silverlight em Visual Studio. No entanto, o suporte de designer para projetos do Silverlight era limitado. Em Visual Studio 2010, o suporte a projetos do Silverlight e WPF designer agora são os mesmos. Por exemplo, em projetos do Silverlight, você pode agora selecionar e a posição de itens com o mouse na superfície de design.
Suporte para várias versões de plataforma
Em Visual Studio 2008, o design de controle vezes foram capazes de destino apenas o mais recente WPF plataforma versão. Em Visual Studio 2010, esse suporte é estendido em várias plataformas, incluindo o suporte de tempo de design para WPF 3.5, 4 do WPF, Silverlight 3, 4 do Silverlight e plataformas futuras versões. Como a mesma API de extensibilidade existe para todas essas plataformas, os autores de tempo de design do controle podem gravar uma experiência facilmente e compartilhá-lo entre os tempos de execução do controle para cada plataforma.
Ligação de dados Visual
O novo construtor de ligação de dados permite a construção visual e edição das ligações sem digitar XAML.
Layout automático
As melhorias de layout incluem mais intuitiva Grid designer e melhor suporte de dimensionamento automaticamente controles de usuário.
Melhor edição de propriedade
A janela Properties agora permite visualmente, criando e editando Brush recursos.
For more information, see WPF Designer.