PrintPreviewDialog — omówienie kontrolki (Formularze systemu Windows)

Kontrolka Formularze systemu PrintPreviewDialog Windows to wstępnie skonfigurowane okno dialogowe służące do wyświetlania sposobu wyświetlania dokumentu 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

Właściwość klucza kontrolki to Document, która ustawia podgląd dokumentu. Dokument musi być obiektem PrintDocument . Aby wyświetlić okno dialogowe, należy wywołać jego ShowDialog metodę. Aliasowanie może sprawić, że tekst będzie bardziej wygładszyć, ale może również sprawić, że ekran będzie wolniejszy; aby go użyć, ustaw UseAntiAlias właściwość na true.

Niektóre właściwości są dostępne za pośrednictwem PrintPreviewControl elementu PrintPreviewDialog , który zawiera. (Nie musisz dodawać tego PrintPreviewControl do formularza; jest on automatycznie zawarty w PrintPreviewDialog oknie dialogowym po dodaniu okna dialogowego do formularza). Przykłady właściwości dostępnych za pośrednictwem PrintPreviewControl elementu to Columns właściwości i Rows , które określają liczbę stron wyświetlanych w poziomie i w pionie na kontrolce. Dostęp do właściwości można uzyskać Columns w języku PrintPreviewDialog1.PrintPreviewControl.Columns Visual Basic, printPreviewDialog1.PrintPreviewControl.Columns Visual C# lub printPreviewDialog1->PrintPreviewControl->Columns Visual C++.

Wydajność aplikacji PrintPreviewDialog

W następujących warunkach kontrolka inicjuje PrintPreviewDialog się bardzo powoli:

  • 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 <aplikacji Ustawienia> sekcji pliku konfiguracji, aby zwiększyć wydajność inicjowania PrintPreviewDialog kontroli:

<appSettings>
   <add key="EnablePrintPreviewOptimization" value="true" />
</appSettings>

EnablePrintPreviewOptimization Jeśli klucz 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 w programie .NET Framework 4.6 lub nowszym można dodać następujący przełącznik do <elementu AppContextSwitchOverrides> w< sekcji środowiska uruchomieniowego> pliku konfiguracji aplikacji:

<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 QueryPageSettings zdarzenia do modyfikowania ustawień drukarki, wydajność PrintPreviewDialog kontrolki nie poprawi się nawet w przypadku ustawienia przełącznika konfiguracji optymalizacji.

Zobacz też