[C# wpf] backgroundworker + progressbar

Chcę umieścić pobieranie kodu strony w osobnym wątku, dodatkowo chcę aktualizować pasek postępu.

Kod strony pobieram w taki sposób

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

                request.Method = "GET";

                HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                string source = string.Empty;

                StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8);

                source = sr.ReadToEnd();

                sr.Close();

                Int64 iSize = response.ContentLength;

                response.Close();

Problem w tym, że nie wiem jak sprawdzać ile się już pobrało, a ile zostało by na tej podstawie zmieniać pasek postępu.

Będę wdzięczny za podpowiedzi, ew. poprawki kodu.

Pozdrawiam