Hm, great question! Haven't heard of this being done. What kind of data are your loading from the Web service? Database query? Images? XML data?
You could probably split whatever it is you're loading into a couple of pieces (say, 10) and then after you load each piece update the progress bar (10% each time). Another option would be to load a small piece of data (a small picture) and time how long it takes, and then use that timing to estimate how long it will take to load the rest of the data. Then use that estimate that makes a progress bar update.
---------------
Matt Faus
InfoPath Dev Texas
Matt Faus / Microsoft InfoPath MVPQdabra® Software / Streamline data gathering to turn process into knowledge