- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
详细设计、重难点分析两章撰写--参考模板
比较详细地介绍你的设计技术、设计过程。比如:介绍使用的控件的使用,介绍数据如何从数据源中取到,如何绑定到控件上,介绍操作的核心代码,例如“添加操作”
套路是:
文字介绍
图片展示
设计说明(对图片的介绍)
核心代码展示
核心代码解释(对代码的介绍)
下面是一个比较好的参考资料:
4.4 视频下载
4.4.1 视频下载分析
Silverlight是一个新事物,基于Silverlight的Web应用程序开发的项目还很少,Silverlight提供的标准下载方式是弹出下载目录对话框,但是对话框没有显示临时文件名,如果编程过程中没有设置默认文件格式,那么用户下载的视频将无法播放,因为没有后缀名,视频播放器无法识别文件。Silverlight文件下载方法很多,本系统采用WebClient类获取服务器端视频资源,WebClient类提供了视频下载过程中的事件,如DownloadProgressChanged,每下载一段数据就会触发该事件,这样就给程序监听当前数据下载提供了入口,在此事件的执行方法中我们可以获取到ProgressPercentage当前文件下载占总量的百分比,BytesReceivedTotal当前下载文件的总量,BytesToReceive当前已下载文件的大小等。然后界面控件通过DataBinding,将上面的数据显示出来,用户就能知道当前数据下载详情,如图4-3所示。
图4-3视频下载详情
4.4.2 核心代码展示
在下载动作的触发部分代码就不在讲解,因为与上面的Silverlight命令执行中逻辑大体相同,这里主要展示下载界面以及下载界面的ViewModel实现。
下载界面ViewModel代码,下载命令处理代码:
public void DownLoad(object param)
{
SaveFileDialog dialog = new SaveFileDialog();
dialog.DefaultExt = WMV;
dialog.Filter = Video files(*.WMV)|*.WMV;
dialog.FilterIndex = 2;
if (dialog.ShowDialog() != true) return;
Stream clientStream = dialog.OpenFile();
Uri uri = new Uri(string.Format({0}{1},HelpClass.GetBaseAddressStr(),DownVideo.VideoURL), UriKind.Absolute);
if (client.IsBusy)
{
client.CancelAsync();
}
client.OpenReadAsync(uri, clientStream);
}
DownloadProgressChanged事件实现方法如下:
void DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
Progress = (double)e.ProgressPercentage;
DownSize =string.Format({0} KB, Convert.ToString((e.BytesReceived) / 1024));
Percent =string.Format({0} %, e.ProgressPercentage.ToString());
ItemSize=string.Format({0}MB, Convert.ToString(((e.TotalBytesToReceive)/1024)/1024));
}
DownloadProgressChanged事件处理方法中对当前下载文件的属性(Progress、DownSize、Percent、ItemSize)进行了赋值,界面层代码如下:
ProgressBarGrid.ColumnSpan=2Grid.Row=1Height=10HorizontalAlignment=Center Name=progressBar1 VerticalAlignment=Center Value={Binding Progress,Mode=OneWay} Width=300 /
上面展示的是Silverlight Prog
您可能关注的文档
最近下载
- 企业吸收合并协议.doc VIP
- 板框压滤机操作规程.doc VIP
- 义务教育版七年级全一册信息科技 第9课 数据传输有新意 教案(表格式).pdf VIP
- 爬山虎的脚PPT课件.pptx
- 康复辅助技术咨询师.pdf VIP
- 北京工业大学822信号与系统2022年真题及答案.pdf VIP
- 全国黄金交易从业水平考试《黄金市场基础知识与交易实务》复习全书【核心讲义+章节练习】.docx VIP
- 电饭煲UL认证零部件检验要求.pdf VIP
- 浙江省桐乡市2025年上半年公开招聘辅警试题含答案分析.docx VIP
- GB30871危险化学品企业位特殊作业安全规范知识考试复习题库(含答案).docx VIP
文档评论(0)