Windows Phone 下载网络图片

1. 使用WebClient, image1是Image控件

        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            WebClient wc = new WebClient();
            wc.OpenReadAsync(new Uri("http://1.su.bdimg.com/icon/weather/a0.jpg"));
            wc.OpenReadCompleted += wc_OpenReadCompleted;
        }

        void wc_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
        {
            BitmapImage bmi = new BitmapImage();
            bmi.SetSource(e.Result);
            image1.Source = bmi;
        }



2.HttpWebRequest

        private void Button_Click_2(object sender, RoutedEventArgs e)
        {
            string url = "http://1.su.bdimg.com/icon/weather/a0.jpg";
            WebRequest reqest = HttpWebRequest.Create(url); //创建WebRequest类
            IAsyncResult resutl = reqest.BeginGetResponse(ResponseCallback, reqest);//返回异步操作的状态
        }

        private void ResponseCallback(IAsyncResult result)
        {
            HttpWebRequest request = (HttpWebRequest)result.AsyncState; //获取异步操作返回的的信息
            WebResponse response = request.EndGetResponse(result);  //结束对 Internet 资源的异步请求
            
            //委托UI线程更新UI
            Dispatcher.BeginInvoke(() => 
            {
                using (Stream stream = response.GetResponseStream())
                {
                    BitmapImage bitmap = new BitmapImage();            
                    bitmap.SetSource(stream);
                    image1.Source = bitmap;
                }
            });            
        }


源码:http://download.csdn.net/detail/renyg25/5377189










  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值