Silverlight中的Downloader对象有什么用

发布时间:2021-12-27 09:17:42 作者:小新
来源:亿速云 阅读:112

这篇文章主要介绍Silverlight中的Downloader对象有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Silverlight中有一个Downloader对象,可以用来下载Silverlight应用程序中相应的文件,比如脚本、媒体文件等等。有了它就可以根据应用程序的具体需要来下载相应的文件,而不必在Silverlight插件初始化的时候就将整个应用程序所需要的文件全部下载下来。这样不仅可以节省用户下载应用程序所花费的等待时间,还可以直接在应用程序中动态使用下载下来的内容而无需刷新整个页面。

Downloader对象能够初始化数据传输,监视数据传输的进程,并能很方便的得到所下载的文件。加载应用程序时的进度条的实现就需要用到Downloader这个对象的强大功能。此外,Downloader对象还可以用来下载ZIP压缩包,并可以从所下载的ZIP包中获取单个文件。

要使用Downloader对象,首先要使用Silverlight的CreateObject方法在Silverlight插件中创建一个Downloader的对象实例。Downloader中有以下几个常用的方法:

◆ Open方法用来实例化Downloader对象,并用来指定要下载的内容。这个方法包含两个类型为字符串的参数:***个参数指定了下载的行为,目前只支持"GET";第二个参数是一个URI,指明了下载的文件。

◆ Send方法用来执行下载的请求。该方法不包含任何参数,并用异步方法下载文件。

由于Downloader对象用异步方法下载文件,因此对下载后的文件操作一般都是通过事件触发的方法来执行的。可以使用addEventListener方法为Downloader的对象实例添加事件监听。addEventListener方法包含两个参数:***个参数指明了所要侦听的Downloader事件;第二个参数指明了事件处理的方法名。Downloader对象一共有三个事件:

◆ Completed事件在下载请求完成,并返回下载内容的时候触发。

◆ DownloadFailed事件在下载失败时返回。

◆ DownloadProgressChanged事件在下载过程中触发。

一个使用Downloader对象的例子如下:

function onDemandLoaded(sender, eventArgs)
...{
    //首先得到当前Silverlight插件的引用
    var SilverlightPlugin = sender.getHost();

    //创建一个Downloader对象
    var downloader = SilverlightPlugin.createObject("downloader");

    //初始化Downloader对象
    downloader.open("GET", "myPage.xaml");

    //执行下载请求
    downloader.send();

    //添加事件侦听
    downloader.addEventListener("downloadProgressChanged", onDownloadProgressChanged);
    downloader.addEventListener("completed", onCompleted);
}

function onDownloadProgressChanged(sender, eventArgs)
...{
    //sender返回的即是已下载的文件对象
}

function onCompleted(sender, eventArgs)
...{
}

以上是“Silverlight中的Downloader对象有什么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. Javascript中arguments对象有什么用
  2. html中的document对象有什么用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

downloader silverlight

上一篇:numpy于Pillow互转的方法是什么

下一篇:Python的torch.sort()如何使用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》