Diferenças com o WPF .NET
Este artigo descreve as diferenças entre o Windows Presentation Foundation (WPF) no .NET e .NET Framework. O WPF para .NET é uma estrutura de código aberto bifurcada do código-fonte original do WPF para .NET Framework.
Há alguns recursos do .NET Framework que o .NET não suporta. Para obter mais informações sobre tecnologias sem suporte, consulte Tecnologias do .NET Framework não disponíveis no .NET.
Importante
A documentação do Guia da Área de Trabalho para .NET 7 e .NET 6 está em construção.
Projetos no estilo de SDK
O .NET usa arquivos de projeto no estilo SDK. Esses arquivos de projeto são diferentes dos arquivos de projeto tradicionais do .NET Framework gerenciados pelo Visual Studio. Para migrar seus aplicativos WPF do .NET Framework para o .NET, você deve converter seus projetos. Para obter mais informações, consulte Como atualizar um aplicativo de área de trabalho WPF para o .NET 7.
Referências do pacote NuGet
Se seu aplicativo .NET Framework listar suas dependências NuGet em um arquivo packages.config , migre para o <PackageReference>
formato:
- No Visual Studio, abra o painel Gerenciador de Soluções .
- No projeto WPF, clique com o botão direito do mouse em packages.config Migrate packages.config>to PackageReference.
Uma caixa de diálogo será exibida mostrando dependências NuGet calculadas de nível superior e perguntando quais outros pacotes NuGet devem ser promovidos ao nível superior. Selecione OK e o arquivo packages.config será removido do projeto e <PackageReference>
os elementos serão adicionados ao arquivo de projeto.
Quando seu projeto usa <PackageReference>
o , os pacotes não são armazenados localmente em uma pasta Pacotes , eles são armazenados globalmente. Abra o arquivo de projeto e remova todos os <Analyzer>
elementos que se referiam à pasta Pacotes . Esses analisadores são incluídos automaticamente com as referências do pacote NuGet.
Segurança de Acesso do Código
O CAS (Segurança de Acesso ao Código) não é suportado pelo .NET. Todas as funcionalidades relacionadas ao CAS são tratadas sob a suposição de confiança total. O WPF para .NET remove o código relacionado ao CAS. A superfície de API pública desses tipos ainda existe para garantir que as chamadas para esses tipos sejam bem-sucedidas.
Os tipos relacionados ao CAS definidos publicamente foram movidos dos assemblies do WPF para os assemblies da biblioteca Core .NET. Os assemblies WPF têm o encaminhamento de tipos definido para o novo local dos tipos movidos.
Montagem de origem | Montagem de destino | Tipo |
---|---|---|
WindowsBase.dll | System.Security.Permissions.dll | MediaPermission MediaPermissionAttribute MediaPermissionAudio MediaPermissionImage MediaPermissionVideo WebBrowserPermission WebBrowserPermissionAttribute WebBrowserPermissionLevel |
System.Xaml.dll | System.Security.Permissions.dll | XamlLoadPermission |
System.Xaml.dll | System.Windows.Extension.dll | XamlAccessLevel |
Observação
Para minimizar o atrito de portabilidade, a funcionalidade para armazenar e recuperar informações relacionadas às propriedades a seguir foi mantida no XamlAccessLevel
tipo.
PrivateAccessToTypeName
AssemblyNameString
.NET Desktop feedback
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de