C# UWP Clipboard

クリップボードにデータをセットする

テキストをクリップボードにセットする

DataPackage dataPackage = new DataPackage();
dataPackage.SetText("TEST STRING");
Clipboard.SetContent(dataPackage);
 

クリップボードからデータを取得する

テキストデータを取得する

DataPackageView dataPackageView1 = Clipboard.GetContent();
if (dataPackageView1.Contains(StandardDataFormats.Text))
{
    string text =  await dataPackageView1.GetTextAsync();
}
 

C# Clipboard.SetText()でエラーが発生した時の対処方法(Copy)

画像データを取得してローカルフォルダに保存する

DataPackageView dataPackageView1 = Clipboard.GetContent();
if (dataPackageView1.Contains(StandardDataFormats.Bitmap))
{
    IRandomAccessStreamReference imageReceived = null;

    try { imageReceived = await dataPackageView1.GetBitmapAsync(); }
    catch { }

    if (imageReceived != null)
    {
        using (IRandomAccessStreamWithContentType imageStream = await imageReceived.OpenReadAsync())
        {
            // sample.jpgを上書き作成する
            StorageFolder storageFolder = ApplicationData.Current.LocalFolder;
            StorageFile sampleFile = await storageFolder.CreateFileAsync("sample.jpg", CreationCollisionOption.ReplaceExisting);

            using (var stream = await sampleFile.OpenAsync(FileAccessMode.ReadWrite))
            {
                await imageStream.AsStreamForRead().CopyToAsync(stream.AsStreamForWrite());
            }

            // エクスプローラを立ち上げて確認する
            await Launcher.LaunchFolderAsync(storageFolder);
        }
    }
}
 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください