Dominique is hitting a key point here. The problem is that parsing and rendering that many features will effectively cause the framerate to go all the way down (since this has to happen in the UI thread), and there wouldn't be any frames available to update a progressbar. So even if you did make a progressbar, you wouldn't be able to update the progress while this is taking place.
Each layer raises progress differently. Tiled and Dynamic Layers raise progress as the images downloads. Graphics and Element layer doesn't raise any progress, and FeatureLayer raises progress when an Update (ie querying featureserver for features) is taking place, and not when the actual rendering happens. The common thing here is that progress is showing that the app is waiting for data from the network - not the rendering progress itself.