Omówienie kontrolki PrintPreviewDialog (Formularze Windows)
Kontrolka Windows Forms PrintPreviewDialog to wstępnie skonfigurowane okno dialogowe służące do wyświetlania sposobu wyświetlania PrintDocument po wydrukowaniu. Użyj jej w aplikacji opartej na systemie Windows jako prostego rozwiązania zamiast konfigurowania własnego okna dialogowego. Kontrolka zawiera przyciski drukowania, powiększania, wyświetlania jednej lub wielu stron i zamykania okna dialogowego.
Kluczowe właściwości i metody
Kluczowa właściwość kontrolki to Document, która ustawia dokument do podglądu. Dokument musi być obiektem PrintDocument. Aby wyświetlić okno dialogowe, należy wywołać jego ShowDialog metodę. Antyaliasing może sprawić, że tekst będzie wygładzony, ale może również spowolnić wyświetlanie; aby go użyć, ustaw właściwość UseAntiAlias na wartość true
.
Niektóre właściwości są dostępne za pośrednictwem PrintPreviewControl, które zawiera PrintPreviewDialog. (Nie musisz dodawać tego PrintPreviewControl do formularza; jest on automatycznie zawarty w PrintPreviewDialog podczas dodawania okna dialogowego do formularza). Przykłady właściwości dostępnych za pośrednictwem PrintPreviewControl to właściwości Columns i Rows, które określają liczbę stron wyświetlanych w poziomie i pionowo w kontrolce. Dostęp do właściwości Columns można uzyskać jako PrintPreviewDialog1.PrintPreviewControl.Columns
w języku Visual Basic, printPreviewDialog1.PrintPreviewControl.Columns
w języku Visual C# lub printPreviewDialog1->PrintPreviewControl->Columns
w języku Visual C++.
Wydajność aplikacji PrintPreviewDialog
W następujących warunkach kontrolka PrintPreviewDialog inicjuje się bardzo wolno:
- Używana jest drukarka sieciowa.
- Preferencje użytkownika dla tej drukarki, takie jak ustawienia dwukierunkowe, są modyfikowane.
W przypadku aplikacji działających w programie .NET Framework 4.5.2 możesz dodać następujący klucz do sekcji <appSettings> pliku konfiguracji, aby zwiększyć wydajność inicjowania kontroli PrintPreviewDialog:
<appSettings>
<add key="EnablePrintPreviewOptimization" value="true" />
</appSettings>
Jeśli klucz EnablePrintPreviewOptimization
jest ustawiony na dowolną inną wartość lub jeśli klucz nie jest obecny, optymalizacja nie jest stosowana. Ten klucz nie ma wpływu, jeśli aplikacja jest uruchomiona w programie .NET Framework 4.6 lub nowszym.
W przypadku aplikacji działających na platformie .NET Framework 4.6 lub nowszej można dodać następujący przełącznik do
<runtime >
<!-- AppContextSwitchOverrides values are in the form of 'key1=true|false;key2=true|false -->
<AppContextSwitchOverrides value = "Switch.System.Drawing.Printing.OptimizePrintPreview=true" />
</runtime >
Jeśli przełącznik nie jest obecny lub jeśli został ustawiony na inną wartość, optymalizacja nie jest stosowana.
Jeśli używasz zdarzenia QueryPageSettings do modyfikowania ustawień drukarki, wydajność kontrolki PrintPreviewDialog nie poprawi się nawet w przypadku ustawienia przełącznika konfiguracji optymalizacji.
Zobacz też
- PrintPreviewDialog
- Kontrolka PrintPreviewControl — omówienie
- Formant Podglądu Wydruku
- kontrolki i składniki Dialog-Box
.NET Desktop feedback