Вот обходное решение вашей проблемы, если вы поместите ChartingControl
внутри элемента управления Panel
в форме Windows.Затем вы можете распечатать панель, внутри панели вы можете добавить заголовок документа в качестве метки и все, что вы хотите добавить.
Сначала с панели инструментов добавьте элемент управления PrintDocument
и назовите его MyPrintDocument
Затем добавьте элемент управления Panel
и поместите в него диаграмму.
Убедитесь, что вы импортировали пространство имен System.Drawing
, затем вы можете напечатать панель следующим образом.
Bitmap MyChartPanel = new Bitmap(panel1.Width, panel1.Height);
panel1.DrawToBitmap(MyChartPanel, new Rectangle(0, 0, panel1.Width, panel1.Height));
PrintDialog MyPrintDialog = new PrintDialog();
if (MyPrintDialog.ShowDialog() == DialogResult.OK)
{
System.Drawing.Printing.PrinterSettings values;
values = MyPrintDialog.PrinterSettings;
MyPrintDialog.Document = MyPrintDocument;
MyPrintDocument.PrintController = new System.Drawing.Printing.StandardPrintController();
MyPrintDocument.Print();
}
MyPrintDocument.Dispose();
Этот код преобразует панель в Bitmap
, а затем печатает, что Bitmap
.
Вы можете сжать это в функцию, такую как:
public void PrintPanel(Panel MyPanel)
{
// Add code from above in here, changing panel1 to MyPanel...
}