Как я могу напечатать данные из DataGridView в C #? - PullRequest
8 голосов
/ 25 декабря 2010

Я занимаюсь разработкой программы, и мне нужно распечатать данные счетов, которые отображаются в элементе управления DataGridView.
Я хочу знать код для печати данных в DataGridView.

IЯ использую Visual Studio 2008 и C # 3.5

1 Ответ

12 голосов
/ 25 декабря 2010

В DataGridView нет встроенной поддержки печати, поэтому вам придется реализовать это самостоятельно. Есть несколько возможных решений:

  1. WinForms обеспечивает стандартную систему печати, которую вы можете использовать для распечатки содержимого вашего DataGridView элемента управления. Вы захотите использовать класс PrintDocument, поэтому соответствующая документация - отличное место для начала чтения. Преимущество этого метода заключается в том, что он позволяет полностью контролировать формат и формат печатного документа.

  2. Вы можете экспортировать данные из DataGridView в Microsoft Excel, а затем распечатать их оттуда. Excel имеет гораздо более надежную, встроенную поддержку печати.

  3. Если вы не заинтересованы в развертывании собственного решения, вы можете просмотреть CodeProject , чтобы найти уже разработанные решения. Например:

    Даже если вы не найдете подходящее решение, которое точно соответствует вашим потребностям, вы, вероятно, сможете получить хорошее представление о том, как самостоятельно создать эту функцию, используя в качестве примера опубликованный код.

  4. Если вы ищете действительно хакерское решение (и у вас нет желания или необходимости настраивать макет или дизайн печатной продукции), вы можете использовать DrawToBitmap* Метод 1051 * выставляется каждым контролем. Это действительно быстрый и грязный подход, при котором точное изображение элемента управления DataGridView отображается на экране в виде Bitmap, который затем можно передать непосредственно на принтер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...