Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Kopiëren en plakken is een fundamentele manier voor gebruikers om gegevens uit te wisselen tussen apps of binnen een app. In dit artikel leest u hoe u kopiëren en plakken in WinUI-apps implementeert met behulp van de Klembord-API's. U leert hoe u gegevens kopieert, knipt en plakt, klembordwijzigingen bijhoudt en de klasse DataPackage gebruikt om verschillende gegevensindelingen te verwerken.
Opmerking
U kunt deze API's ook in andere bureaublad-apps gebruiken via Windows Runtime (WinRT)-API's. Zie Call Windows Runtime API's in desktop-apps voor meer informatie.
Controleer op ingebouwde klembordondersteuning
In veel gevallen hoeft u geen code te schrijven om klembordbewerkingen te ondersteunen. Veel van de standaardbesturingselementen voor XAML die u kunt gebruiken om apps te maken, bieden al ondersteuning voor klembordbewerkingen.
Klaarzetten
Neem eerst de Windows.ApplicationModel.DataTransfer naamruimte op in uw app. Voeg vervolgens een exemplaar van het object DataPackage toe. Dit object bevat zowel de gegevens die de gebruiker wil kopiëren als alle eigenschappen (zoals een beschrijving) die u wilt opnemen.
Kopiëren en knippen
Kopiëren en knippen (ook wel verplaatsen genoemd) werken bijna precies hetzelfde. Kies welke bewerking u wilt gebruiken met behulp van de eigenschap RequestedOperation .
// copy
dataPackage.RequestedOperation = DataPackageOperation.Copy;
// or cut
dataPackage.RequestedOperation = DataPackageOperation.Move;
De gekopieerde inhoud instellen
Vervolgens kunt u de gegevens die een gebruiker heeft geselecteerd toevoegen aan het object DataPackage. Als deze gegevens worden ondersteund door de klasse DataPackage , kunt u een van de bijbehorende methoden van het DataPackage-object gebruiken. U kunt als volgt tekst toevoegen met behulp van de methode SetText :
De laatste stap bestaat uit het toevoegen van de DataPackage aan het klembord door de methode static SetContent aan te roepen.
Plakken
Als u de inhoud van het Klembord wilt ophalen, roept u de statische GetContent-methode aan. Met deze methode wordt een DataPackageView geretourneerd die de inhoud bevat. Dit object is bijna identiek aan een DataPackage object, behalve dat de inhoud alleen-lezen is. Met dat object kunt u de methode AvailableFormats of Contains gebruiken om te bepalen welke indelingen beschikbaar zijn. Vervolgens kunt u de bijbehorende methode DataPackageView aanroepen om de gegevens op te halen.
async void OutputClipboardText()
{
DataPackageView dataPackageView = Clipboard.GetContent();
if (dataPackageView.Contains(StandardDataFormats.Text))
{
string text = await dataPackageView.GetTextAsync();
// To output the text from this example, you need a TextBlock control
TextOutput.Text = "Clipboard now contains: " + text;
}
}
Wijzigingen in het Klembord bijhouden
Naast kopieer- en plakopdrachten kunt u ook de wijzigingen in het klembord bijhouden. Doe dit door het ContentChanged-evenement van het klembord te verwerken.
Clipboard.ContentChanged += async (s, e) =>
{
DataPackageView dataPackageView = Clipboard.GetContent();
if (dataPackageView.Contains(StandardDataFormats.Text))
{
string text = await dataPackageView.GetTextAsync();
// To output the text from this example, you need a TextBlock control
TextOutput.Text = "Clipboard now contains: " + text;
}
}
Verwante inhoud
Windows developer