void HandleQueueDownloaderOnStart(LocalProgram startedProgram, int queueSize) { InvokeOnMainThread(delegate { Console.WriteLine("{0} has started", startedProgram.Name); TitleLabel.Text = startedProgram.Name; TitleLabel.SetNeedsDisplay(); ImageView.Image = RemoteProgramHelper.GetFullsizeImageFromFile(startedProgram.ThumbnailPath, ImageView.Bounds); if (queueSize == 0) { SubLabel.Text = "Downloading. No more items in the queue"; } else if (queueSize == 1) { SubLabel.Text = String.Format("Downloading. {0} item remaining to download", queueSize); } else { SubLabel.Text = string.Format("Downloading. {0} items remaining to download", queueSize); } SubLabel.SetNeedsDisplay(); ProgressBar.Progress = 0; ProgressBar.SetNeedsDisplay(); }); }