风云的银光志Silverlight4.0教程之轻松 *** 作剪切板

风云的银光志Silverlight4.0教程之轻松 *** 作剪切板,第1张

概述  微软于PDC2009上发布Silverlight 4 Beta版,微软在Silverlight 4版本中处理了约8000个的Silverlight终端用户的请求,加入了一系列另开发人员兴奋的新特性,最突出的主要体现在几个方面: 开发工具增强:Visual Studio 2010具有可视化的设计工具,创建项目时可以选择运行时版本是3.0还是4.0,BLEND4加入XAML和C#代码全方位智能感知

 

@H_403_12@微软于PDC2009上发布Silverlight 4 Beta版,微软在Silverlight 4版本中处理了约8000个的Silverlight终端用户的请求,加入了一系列另开发人员兴奋的新特性,最突出的主要体现在几个方面:

@H_403_12@开发工具增强:Visual Studio 2010具有可视化的设计工具,创建项目时可以选择运行时版本是3.0还是4.0,BLEND4加入XAML和C#代码全方位智能感知功能、XAML的样式应用更为易用等。

@H_403_12@摄像头与MIC硬件支持:可以用极少量的代码实现启用用户本机的WebCam和Mic,并可进行本地录制。

@H_403_12@报表打印支持:报表打印问题在Silverlight4中得到的较好的解决。

@H_403_12@更强大的基础类控件(RichTextBox、DataGrID增强版):富文本控件RichTextBox和具有可粘贴、排序功能的DataGrID被加入。

@H_403_12@WCF增强:终于支持TCP通讯,比较http提升3-5倍,限于4502-4534端口。

@H_403_12@兼容性增强:对Google的Chrome浏览器的支持。

@H_403_12@MEF支持:MEF全称为Managed Extensibility Framework,译为“托管扩展框架”,支持创建大型复杂的应用程序。

@H_403_12@运行速度提升:启动速度和渲染速度较前个版本提升约2倍左右。

@H_403_12@DRM增强:支持PlayReady,可以对视频和音频的播放进行的保护,补充了对H.264的DRM保护。

@H_403_12@其它增强:本地文件读写、鼠标右键事件支持、剪粘板支持。

      Silverlight 4.0开始加入了System.windows.Clipboard(剪切板 *** 作)类,有了它我们就可以非常方便的 *** 作剪切板的数据了,这让一些Silverlight应用程序中的文本可以copY到Clipboard之中,同时你可以将从其它来源copY到剪切板中的内容粘贴到Silverlight应用程序之中,在此之前我们只能通过JavaScript来访问剪切板。

     接下来我们看一下Clipboard类为我们带来了什么,Clipboard类支持ContainsText、SetText和GetText三个方法,其中ContainsText可以返回一个bool类型的值,让我们知道剪切板目前保存的类型是否是Silverlight所支持的Unicode类型字符,SetText和GetText分别是用来设置和获GetText剪切板的文本数据。

下面我们看一个Silverlight *** 作剪切板的实例:

XAML:

      < GrID x:name = " LayoutRoot " WIDth = " 400 " Height = " 200 " Background = " White " >
                < GrID.RowDeFinitions >
                        < RowDeFinition/ >
                        < RowDeFinition/ >
                < /GrID.RowDeFinitions >
                < GrID.ColumnDeFinitions >
                        < ColumnDeFinition   / >
                        < ColumnDeFinition WIDth = " 100 " / >
                < /GrID.ColumnDeFinitions >
10                 < TextBox x:name = " tbcopy " WIDth = " 260 " Height = " 30 " / >
11                 < TextBox x:name = " tbPaste " WIDth = " 260 " Height = " 30 " GrID .Row= " 1 " / >
12                 < button Content = " 复制 " GrID .Column= " 1 "
13                       Click = " btncopy_Click "
14                       x:name = " btncopy " WIDth = " 80 " Height = " 25 " / >
15                 < button Content = " 粘贴 " GrID .Column= " 1 " GrID .Row= " 1 "  
16                       Click = " btnPaste_Click "
17                       x:name = " btnPaste " WIDth = " 80 " Height = " 25 " / >
18         < /GrID >

C#:

                private   voID   btncopy_Click ( object   sender,   RoutedEventArgs   e )
                {
                        if   ( tbcopy . Text   ! =   string . Empty )
                        {
                                // 设置剪切板
                                Clipboard . SetText ( tbcopy . Text ) ;
                        }
                }

10                 private   voID   btnPaste_Click ( object   sender,   RoutedEventArgs   e )
11                 {
12                         // 判断剪切板是否包括文本字符
13                         if   ( Clipboard . ContainsText ( ) )
14                         {
15                                 // 获取剪切板
16                                 tbPaste . Text   =   Clipboard . GetText ( ) ;
17                         }
18                 }

运行结果如图所示。

第一次运行SetText会让用户确认是否允许Silverlight *** 作剪切板,如果用户点击否会引发Clipboard access is not allowed异常。

下图完成粘贴(Paste) *** 作。

 

 

 

      需要注意的是Silverlight与WPF不同的是,Silverlight仅仅支持Unicode字符类型的剪切板 *** 作,还不能像WPF那像可以对不同的类型的剪切板 *** 作,尽管如此,但是至少是Silverlight技术的一个增强,正是这种不断的进步使更多的理想在Silverlight中变为可能。

 

希望对大家有用!

总结

以上是内存溢出为你收集整理的风云的银光志Silverlight4.0教程之轻松 *** 作剪切板全部内容,希望文章能够帮你解决风云的银光志Silverlight4.0教程之轻松 *** 作剪切板所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1037787.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存