Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article explique comment prendre en charge la copie et le collage dans les applications de plateforme Windows universelle (UWP) à l’aide du Presse-papiers. Copier et coller est le moyen classique d’échanger des données entre des applications ou au sein d’une application, et presque toutes les applications peuvent prendre en charge les opérations du Presse-papiers à un certain degré. Pour obtenir des exemples de code complets qui illustrent plusieurs scénarios de copie et de collage différents, consultez l’exemple de presse-papiers .
Vérifiez la prise en charge intégrée du Presse-papiers
Dans de nombreux cas, vous n’avez pas besoin d’écrire du code pour prendre en charge les opérations du presse-papiers. La plupart des contrôles XAML par défaut que vous pouvez utiliser pour créer des applications prennent déjà en charge les opérations du Presse-papiers.
Préparez-vous
Commencez par inclure l’espace de noms Windows.ApplicationModel.DataTransfer dans votre application. Ensuite, ajoutez une instance de l’objet dataPackage . Cet objet contient les données que l’utilisateur souhaite copier et toutes les propriétés (telles qu’une description) que vous souhaitez inclure.
DataPackage dataPackage = new DataPackage();
Copier et couper
Copier et couper (également appelé déplacer) fonctionnent presque exactement de la même façon. Choisissez l’opération souhaitée à l’aide de la propriété RequestedOperation.
// copy
dataPackage.RequestedOperation = DataPackageOperation.Copy;
// or cut
dataPackage.RequestedOperation = DataPackageOperation.Move;
Définir le contenu copié
Ensuite, vous pouvez ajouter les données qu’un utilisateur a sélectionnées à l’objet DataPackage. Si ces données sont prises en charge par la classe
dataPackage.SetText("Hello World!");
La dernière étape consiste à ajouter le DataPackage au Presse-papiers en appelant la méthode statique SetContent.
Clipboard.SetContent(dataPackage);
Coller
Pour obtenir le contenu du presse-papiers, appelez la méthode statique GetContent. Cette méthode retourne une DataPackageView qui contient le contenu. Cet objet est presque identique à un objet DataPackage, sauf que son contenu est en lecture seule. Avec cet objet, vous pouvez utiliser les AvailableFormats ou la méthode Contains pour identifier les formats disponibles. Ensuite, vous pouvez appeler la méthode DataPackageView correspondante pour obtenir les données.
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;
}
}
Suivre les modifications apportées au Presse-papiers
Outre les commandes copier-coller, vous pouvez également suivre les modifications du Presse-papiers. Pour ce faire, gérez l’événement ContentChanged du Presse-papiers.
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;
}
}
Voir aussi
- Exemple de presse-papiers
- Communication entre applications
- TransfertDeDonnées
- PaquetDeDonnées
- « DataPackageView »
- EnsembleDePropriétésDuPaquetDeDonnées
- DemandeDeDonnées
- DemandeDeDonnées
- ÉchecAvecTexteD'affichage
- ShowShareUi
- OpérationDemandée
- ListeDesContrôles
- SetContent
- GetContent
- FormatsDisponibles
- contient
- ChangementDeContenu