Jak poprawnie drukować informacje pobrane z aplikacji?

0

Witam,
Mam problem z napisaniem kodu, który drukowałby kilka rzeczy, które wybiera się dzięki aplikacji.
Przykładowa aplikacja wygląda tak:
user image

No i teraz chciałbym sobie to wydrukować
Ma to mniej więcej wyglądać tak:
user image

Teoretycznie wszystko jest ok, ale nie podoba mi się kod, który napisałem do drukowania tego.
Wygląda to tak:

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            Font drawFont = new Font("Arial Unicode MS", 11);
            SolidBrush drawBrush = new SolidBrush(Color.Black);

            e.Graphics.DrawString(label1.Text, drawFont, drawBrush, 20, 20);
            e.Graphics.DrawString(comboBox1.Text, drawFont, drawBrush, 200, 20);

            e.Graphics.DrawString(label2.Text, drawFont, drawBrush, 20, 40);
            e.Graphics.DrawString(comboBox2.Text, drawFont, drawBrush, 200, 40);

            e.Graphics.DrawString(label3.Text, drawFont, drawBrush, 20, 60);
            e.Graphics.DrawString(comboBox3.Text, drawFont, drawBrush, 200, 60);

        }

Jak widać tutaj po prostu 'z palca' dokładnie wpisuje gdzie ma być jaki napis..
Nie jest to chyba zbyt mądre i fajne rozwiązanie,
Najlepiej (chyba) byłoby stworzyć sobie taką tabelę i to jakoś w niej wypisywać te elementy:
coś na taki wzór:
user image

Jak w ogóle się za to zabrać?

0

Użyj raportów

0

Jak widać tutaj po prostu 'z palca' dokładnie wpisuje gdzie ma być jaki napis..
No na tym to generalnie polega… jak się nie podoba to wygeneruj np. HTML-a i wydrukuj przez przeglądarkę.
Albo jak @mychal.

0
mychal napisał(a):

Użyj raportów

Mógłbyś trochę rozjaśnić o co chodzi?
Bo nie bardzo rouzumiem:(
Dzięki

1

Chodzi o zewnętrzną bibliotekę do tworzenia „raportów” (ang. reports) czyli generowania tabelek, wykresów i dokumentów przeznaczonych do wydruku.

Słowem: to co chcesz osiągnąć (bardziej „zautomatyzowane” generowanie wydruków) to właśnie są te „raporty”.

A wersja „dla ubogich”: trzymaj współrzędną y w zmiennej i po każdej linijce tekstu zwiększaj o 20 (w twoim przypadku). Nie musisz współrzędnych wpisywać na sztywno przecież.

1 użytkowników online, w tym zalogowanych: 0, gości: 1