Если вы хотите сгенерировать PDF или XPS в Silverlight, вам придется вернуться туда обратно на сервер. Для создания PDF-файлов в .NET существует множество фреймворков и инструментов.
Однако я не отказался бы от идеи генерации HTML для печати в Silverlight 2. Я думаю, что это отличная идея, и я не считаю, что веб-печать сломана. HTML-таблицы с CSS-стилями могут быть действительно полезными.
Недавно я опубликовал сообщение в блоге, описывающее, как использовать клиентские шаблоны ASP.NET AJAX 4.0 для генерации HTML-кода на клиенте с использованием Silverlight 2. Не нужно будет писать кусок кода C# для преобразования любых данных grid к таблице HTML.
Однако, если вы знаете, какие объекты вы показываете в сетке данных, вы можете просто сгенерировать HTML-код самостоятельно, основываясь на вашей структуре объекта.
У вас есть несколько вариантов для генерации HTML в Silverlight:
- конкатенации строк
- Использование LINQ для XML, чтобы построить фрагмент HTML
- Использование Jeff Wilcox HTML Control Library
- Использование 4.0 клиента ASP.NET AJAX Шаблоны
Вы передаете HTML-код обратно в браузер с помощью HTML-моста (google f или для получения дополнительной информации).
Вы также должны check out my blog post for a comprehensive overview of printing options in Silverlight.
Rob, Я согласен, что html - это не лучший выбор, и в формате pdf будет лучше. То, что я ищу, - это сторонний генератор PDF-файлов, который я мог бы экспортировать в сетку, и не должен создавать PDF-файл из источника данных сетки. Я буду, если придется, но сначала ищу ленивое решение. – Kyle 2008-10-07 18:42:25