Sliverlight4学习--拖放外部文件到程序中、鼠标滚动、打印功能

1.拖放外部文件到应用程序

 拖放操作的 Demo - Silverlight 4.0 支持拖动外部文件到 Silverlight 程序中(支持多文件拖放,但是不支持文件夹拖放)
 
 UIElement.AllowDrop - 指定 UIElement 是否可以用作于 DropTarget(拖放操作的放目标)。默认值为 false
 UIElement.DragEnter - 拖动外部文件进入到 UIElement 时所触发的事件(事件参数类型为:DragEventArgs)
 UIElement.DragLeave - 拖动外部文件离开 UIElement 时所触发的事件(事件参数类型为:DragEventArgs)
 UIElement.DragOver - 拖动外部文件在 UIElement 中移动时所触发的事件(事件参数类型为:DragEventArgs)
 UIElement.Drop - 拖动外部文件在 UIElement 中放开时所触发的事件(事件参数类型为:DragEventArgs)
 DragEventArgs - 拖放操作所触发的拖放事件的事件参数
 DragEventArgs.Data - 获取与拖放事件相关联的数据(IDataObject 类型)
 IDataObject.GetData(DataFormats.FileDrop) - 返回被拖放的外部文件的 FileInfo 数组
 (1)前台界面

   前台界面放Canvas,TextBlock,WrapPanel,其中Canvas是拖放区域,WrapPanel为图片显示区,Canvas的AllowDrop要设置为True,并且给Canvas添加事件----Drop ,DragLeave ,DragLeave 。具体代码如下

 

(2)后台代码

(3)显示效果

2.鼠标滚动放大缩小图片

(1)创建一个子窗体,用于单击缩率图展示大图片。单击事件在1中有说明。

 在构造函数中,设置委托用于设置图片源

  

其中ImageView_Loaded事件如下:

在构造函数中添加鼠标滚动事件:

ImageViewer_MouseWheel事件为:

(2)显示效果

 

 3.右击弹出打印按钮

(1)添加右击选项

    一般在Silverlight应用程序右击总是出现Sliverlight(s)一个单选项,我们先要删除该选项,然后再添加打印的按钮。

   在前台Grid中添加三个鼠标单击事件,如下:

 在后台代码中MouseRightButtonDown代码如下:

MouseRightButtonUp代码如下:

 最后当鼠标左击时,右击出现的菜单消失:

 

(2)显示效果:

 (3)打印

演示 Silverlight 4.0 中新增的对打印的支持 
 * PrintDocument - 用于提供打印功能的类
 *     PrintDocument.PrintedPageCount - 已经被打印的页数
 *     PrintDocument.Print(string documentName) - 弹出打印对话框。需要指定的参数为“在打印队列中需要显示的文档名称”
 *     PrintDocument.BeginPrint - 调用 Print() 方法并且按了打印对话框中的打印按钮之后所触发的事件,在 PrintPage 事件之前发生
 *     PrintDocument.EndPrint - 打印结束(包括打印被取消)后所触发的事件
 *     PrintDocument.PrintPage - 每打印一页之前所触发的事件
 * PrintPageEventArgs - PrintPage 事件的事件参数
 *     PrintPageEventArgs.PageVisual - 需要被打印的 UIElement
 *     PrintPageEventArgs.PrintableArea - 可打印的区域大小(Size 类型,其包括 Width 属性和 Height 属性和 IsEmpty 属性)
 *     PrintPageEventArgs.PageMargins - 获取当前打印页的页边距(Thickness 类型,其包括 Left 属性和 Top 属性和 Right 属性和 Bottom 属性)
 *     PrintPageEventArgs.HasMorePages - 设置是否还有更多页需要打印(如果设置为 true,则会继续出触发 PrintPage 事件)
 */


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值