Delen via


Windows Runtime-onderdelen maken met C#/WinRT

Notitie

Het ontwerpen van Windows Runtime-onderdelen met C#/WinRT wordt ondersteund op .NET 6 en hoger.

Het C#/WinRT NuGet-pakket biedt ondersteuning voor het ontwerpen van uw eigen Windows Runtime-typen en -onderdelen in C#, en het gebruiken ervan vanuit elke taal die compatibel is met Windows Runtime, zoals C++/WinRT- of Rust. C#/WinRT-creatie- en hostingondersteuning vereist .NET 6 en Visual Studio 2022 en is bedoeld om bureaubladtoepassingsscenario's te ondersteunen, waaronder de Windows App SDK-en WinUI3-.

Zie voor een overzicht van hoe u een Windows Runtime-onderdeel maakt met .NET 6 en hoe u dit kunt gebruiken vanuit een C++/WinRT-consoletoepassing, Walkthrough: Een C#/WinRT-onderdeel maken en gebruiken vanuit C++/WinRT-.

Raadpleeg de C#/WinRT GitHub-opslagplaats en Creatie van C#/WinRT-onderdelenvoor meer informatie en om problemen te zoeken of op te slaan.

Typen declareren in Windows Runtime-onderdelen

Volg tijdens het ontwerpen van uw Windows Runtime-onderdeel de richtlijnen en typebeperkingen die worden beschreven in de bestaande UWP-documentatie over Windows Runtime-onderdelen (zie Windows Runtime-onderdelen met C# en Visual Basic). Het onderdeel kan voor het grootste deel worden geïmplementeerd zoals elke andere C#-bibliotheek. Er zijn echter beperkingen voor de openbare typen in het onderdeel dat wordt blootgesteld aan Windows Runtime en dat wordt gedeclareerd in de gegenereerde .winmd voor gebruik door anderen.

Extern kunt u alleen Windows Runtime-typen beschikbaar maken voor parameters en retourwaarden. U kunt ingebouwde C#-typen gebruiken als onderdeel van het openbare oppervlak van het onderdeel zolang er een toewijzing is van het .NET-type aan WinRT (zie .NET-toewijzingen van WinRT-typen in C#/WinRT), en ze worden weergegeven voor gebruikers van het onderdeel als de bijbehorende Typen Windows Runtime. Windows Runtime-typen van andere Windows Runtime-onderdelen en de Windows SDK kunnen ook worden gebruikt als onderdeel van de openbare implementatie van het onderdeel, zoals in parameters, retourtypen en overname van klassen.

Notitie

Er zijn enkele Windows Runtime-typen die zijn toegewezen aan .NET-typen (zie .NET-toewijzingen van WinRT-typen in C#/WinRT). Deze .NET-typen kunnen worden gebruikt in de openbare interface van uw Windows Runtime-onderdeel en ze worden weergegeven voor gebruikers van het onderdeel als de bijbehorende Windows Runtime-typen.