This was my code:
var document = new Document(_pageSize, PageMargin, PageMargin, PageMargin, PageMargin);
var writer = PdfWriter.GetInstance(document, output);
writer.CloseStream = false;
writer.PageEvent = new Footer(HeaderFont, _defaultFont.BaseFont, report.Name);
document.Open();
if (report.Results.Any())
document.Add(CreateTable(report.Results, report.Types, report.RootType));
else
document.Add(new Paragraph("No results", _defaultFont));
writer.Close();
After adding the line document.Close();
before the writer.Close();
line, it now shows in both Foxit and Acrobat.
I guess a key thing with itext# is to be very careful that objects are closed properly. This probably reflects it is a ported library and not a library built for .NET from the ground up.