WPF 进度条

摘要:
在前台创建一个新的ProgressBar控件,并将其命名为pbDownWebRequestrequest=WebRequest。创建(“http://files.cnblogs.com/fornet/404.rar“);WebResponseresponse=request.GetResponse();pbDown.Maximum=response.ContentLength;ThreadPool。

前台新建一个控件ProgressBar控件,并命名为pbDown
            WebRequest request = WebRequest.Create("http://files.cnblogs.com/fornet/404.rar");
            WebResponse respone = request.GetResponse();
            pbDown.Maximum = respone.ContentLength;
            ThreadPool.QueueUserWorkItem((obj) =>
                {
                    Stream netStream = respone.GetResponseStream();
                    Stream fileStream =new FileStream(@"d:404.rar",FileMode.Create);
                    byte[] read = new byte[1024];
                    long progressBarValue = 0;
                    int realReadLen = netStream.Read(read, 0, read.Length);
                    while (realReadLen > 0)
                    {
                        fileStream.Write(read,0, realReadLen);
                        progressBarValue += realReadLen;
                        pbDown.Dispatcher.BeginInvoke(new ProgressBarSetter(SetProgressBar), progressBarValue);
                        realReadLen = netStream.Read(read, 0, read.Length);
                    }
                    netStream.Close();
                    fileStream.Close();

                }, null);
更新UI:
        public delegate void ProgressBarSetter(double value);
        public void SetProgressBar(double value)
        {
            pbDown.Value =value;
        }

免责声明:文章转载自《WPF 进度条》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇position fixed 居中VScode集成Git下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

WPF入门教程系列一——基础

WPF入门教程系列目录 WPF入门教程系列二——Application介绍 WPF入门教程系列三——Application介绍(续) WPF入门教程系列四——Dispatcher介绍 WPF入门教程系列五——Window 介绍 WPF入门教程系列六——布局介绍与Canvas(一) WPF入门教程系列七——布局之WrapPanel与StackPanel(二)...

c# wpf 条状刻度线,仪表盘的做法

网上看到 https://www.cnblogs.com/congqiandehoulai/p/12733245.html  照着例子做,一直不行,最后发现了问题。 1 需要添加两个引用 Microsoft.Expression.ControlsMicrosoft.Expression.Drawing 这两个dll需要引用到项目里,可以在自己的电脑里查到...

WPF 获取程序路径的一些方法,根据程序路径获取程序集信息

一、WPF 获取程序路径的一些方法方式一 应用程序域 //获取基目录即当前工作目录 string str_1 = System.AppDomain.CurrentDomain.BaseDirectory; 示例结果:F:\WPF实例\bin\Debug\示例说明:取得Debug目录并且带斜杠 //获取应用程序基目录的名称 string str_2...

Wpf依赖属性

本博文参考:http://www.cnblogs.com/xiongpq/archive/2010/06/29/1767905.html 概述: Windows Presentation Foundation (WPF) 提供了一组服务,这些服务可用于扩展公共语言运行时 (CLR) 属性的功能。这些服务通常统称为 WPF 属性系统。由 WPF 属性系统支...

WPF系列学习

1:WPF最小化到系统托盘 2:WPF程序单例运行 3:WPF中三种异常捕获:UI线程异常、非UI线程异常、Task线程异常 在窗体放一个按钮在单击事件执行如下代码来模拟。 private void Button_Click(objectsender, RoutedEventArgs e) { //t...

WPF 分页控件

注:此文原来写的,后来忘了什么原因删除了,在网上看到有人转载,我在转回来。 做项目时需要数据分页在网站找了半天也没有找到合适的,没办法自己写个,项目比较着急先凑合写个吧,有时间在重写下。 页面部分代码 <UserControl x:Class="Test.Pager" xmlns="http://schemas.microso...