欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > 内容正文

Universal Windows Platform 第一弹 使用剪切板,universalplatform

来源: 开发者 投稿于  被查看 3473 次 评论:207

Universal Windows Platform 第一弹 使用剪切板,universalplatform


不知道是否还有童鞋记得我上半年写的一系列Windows App开发的博客,那时候Windows 10还处于预览版,UWP(Universal Windows Platform)当时也还处于雏形阶段。

在当时的专栏的首篇中,我们就展望过UWP,而如今的UWP简直是更上百层楼了,定当让你刮目相看。

不过,这一篇还是先来介绍一下剪切板的功能,因为之前的文章仅仅是介绍了从应用外剪切/复制到应用内,并没有介绍如何剪切到应用外,这里就通过一个小小的示例来看看吧。

复制文本

        private void BtnClip_Click(object sender, RoutedEventArgs e)
        {
            string str = 待复制;
            DataPackage dp = new DataPackage();
            dp.SetText(str);
            Clipboard.SetContent(dp);
        }

复制图片

        private async void BtnClip2_Click(object sender, RoutedEventArgs e)
        {
            DataPackage dp = new DataPackage();               
            Uri uri = new Uri(ms-appx:///Assets/ms.png);
            StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(uri);            
            dp.SetBitmap(RandomAccessStreamReference.CreateFromUri(uri));  
            Clipboard.SetContent(dp);    
        }

粘贴文本/图片

DataPackageView pv = Clipboard.GetContent();

if (pv.Contains(StandardDataFormats.Text))
{
   var txt = await Clipboard.GetContent().GetTextAsync();
   tBlockClipboard.Text = txt;
}
else if (pv.Contains(StandardDataFormats.Bitmap))
{
   var bmp = await Clipboard.GetContent().GetBitmapAsync();
   BitmapImage bitMap = new BitmapImage();
   bitMap.SetSource(await bmp.OpenReadAsync());
   this.imgClicpboard.Source = bitMap;
}

之前的文章,同样欢迎访问,并未过期……

 

相关频道:

用户评论