Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Salin dan tempel adalah cara mendasar bagi pengguna untuk bertukar data antara aplikasi atau dalam aplikasi. Artikel ini memperlihatkan kepada Anda cara menerapkan salin dan tempel di aplikasi WinUI menggunakan API clipboard. Anda akan mempelajari cara menyalin, memotong, dan menempelkan data, melacak perubahan clipboard, dan menggunakan kelas DataPackage untuk menangani format data yang berbeda.
Nota
Anda juga dapat menggunakan API ini di aplikasi desktop lain melalui API Windows Runtime (WinRT). Untuk informasi selengkapnya, lihat API Call Windows Runtime di aplikasi desktop.
Periksa dukungan clipboard bawaan
Dalam banyak kasus, Anda tidak perlu menulis kode untuk mendukung operasi clipboard. Banyak kontrol XAML default yang dapat Anda gunakan untuk membuat aplikasi yang sudah mendukung operasi clipboard.
Bersiap
Pertama, sertakan Windows. ApplicationModel.DataTransfer namespace di aplikasi Anda. Kemudian, tambahkan instans objek DataPackage. Objek ini berisi data yang ingin disalin pengguna dan properti apa pun (seperti deskripsi) yang ingin Anda sertakan.
Salin dan potong
Salin dan potong (juga disebut sebagai pemindahan) bekerja hampir sama persis. Pilih operasi mana yang Anda inginkan dengan menggunakan properti RequestedOperation .
// copy
dataPackage.RequestedOperation = DataPackageOperation.Copy;
// or cut
dataPackage.RequestedOperation = DataPackageOperation.Move;
Mengatur konten yang disalin
Selanjutnya, Anda dapat menambahkan data yang telah dipilih pengguna ke objek DataPackage. Jika data ini didukung oleh kelas DataPackage , Anda dapat menggunakan salah satu metode yang sesuai dari objek DataPackage . Berikut cara menambahkan teks dengan menggunakan metode SetText :
Langkah terakhir adalah menambahkan DataPackage ke clipboard dengan memanggil metode SetContent statis.
Pasta
Untuk mendapatkan konten clipboard, panggil metode GetContent statis. Metode ini mengembalikan DataPackageView yang berisi konten. Objek ini hampir identik dengan objek DataPackage, kecuali bahwa kontennya bersifat baca-saja. Dengan objek tersebut, Anda dapat menggunakan AvailableFormats atau metode Contains untuk mengidentifikasi format apa yang tersedia. Kemudian, Anda dapat memanggil metode DataPackageView yang sesuai untuk mendapatkan data.
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;
}
}
Lacak perubahan pada clipboard
Selain perintah salin dan tempel, Anda mungkin juga ingin melacak perubahan clipboard. Lakukan ini dengan menangani peristiwa clipboard ContentChanged.
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;
}
}
Konten terkait
Windows developer