This part of code is what I have written based on the "Create an offline map" Guide:
Suppose, you are trying to access the tile layer, "https://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Street_Map/MapServer"
and it will ask the AGOL credential to access. You could access the layer using AuthenticationManager and hardcode the credentials as below:
string ONLINE_BASEMAP_URL = "https://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Street_Map/MapServer";
string ONLINE_BASEMAP_TOKEN_URL = "https://www.arcgis.com/sharing/rest/generatetoken";
ArcGISTiledLayer tiledLayer = new ArcGISTiledLayer(new Uri(ONLINE_BASEMAP_URL));
AuthenticationManager auth = AuthenticationManager.Current;
var cred = await auth.GenerateCredentialAsync(new Uri(ONLINE_BASEMAP_TOKEN_URL), <AGOL_USERNAME>, <AGOL_PASSWORD>);
tiledLayer.Credential = cred;
Hope that helps.
Note that you have to use AuthenticationManager to hook the authentication and providing credentials directly won't work. We do this because there might be multiple domains involved in the task so we cannot send one set of credentials around.
It shows how to hook the progress indication as well.