Auf Englisch lesen

Teilen über


PrintTicket.Stapling Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob und an welcher Position ein Drucker mehrere Seiten heftet, oder legt diesen fest.

C#
public System.Printing.Stapling? Stapling { get; set; }

Eigenschaftswert

Ein Stapling-Wert, der angibt, wie ein Drucker die Ausgabe heftet.

Ausnahmen

In einem aufrufenden Code wurde versucht, die Eigenschaft auf einen Wert festzulegen, der nicht in der Stapling-Enumeration vorhanden ist.

Beispiele

Das folgende Beispiel zeigt, wie Sie diese Eigenschaft verwenden, um die Funktionen eines Druckers zu testen und einen Druckauftrag zu konfigurieren, um sie zu nutzen.

C#
// ---------------------- GetPrintTicketFromPrinter -----------------------
/// <summary>
///   Returns a PrintTicket based on the current default printer.</summary>
/// <returns>
///   A PrintTicket for the current local default printer.</returns>
private PrintTicket GetPrintTicketFromPrinter()
{
    PrintQueue printQueue = null;

    LocalPrintServer localPrintServer = new LocalPrintServer();

    // Retrieving collection of local printer on user machine
    PrintQueueCollection localPrinterCollection =
        localPrintServer.GetPrintQueues();

    System.Collections.IEnumerator localPrinterEnumerator =
        localPrinterCollection.GetEnumerator();

    if (localPrinterEnumerator.MoveNext())
    {
        // Get PrintQueue from first available printer
        printQueue = (PrintQueue)localPrinterEnumerator.Current;
    }
    else
    {
        // No printer exist, return null PrintTicket
        return null;
    }

    // Get default PrintTicket from printer
    PrintTicket printTicket = printQueue.DefaultPrintTicket;

    PrintCapabilities printCapabilities = printQueue.GetPrintCapabilities();

    // Modify PrintTicket
    if (printCapabilities.CollationCapability.Contains(Collation.Collated))
    {
        printTicket.Collation = Collation.Collated;
    }

    if ( printCapabilities.DuplexingCapability.Contains(
            Duplexing.TwoSidedLongEdge) )
    {
        printTicket.Duplexing = Duplexing.TwoSidedLongEdge;
    }

    if (printCapabilities.StaplingCapability.Contains(Stapling.StapleDualLeft))
    {
        printTicket.Stapling = Stapling.StapleDualLeft;
    }

    return printTicket;
}// end:GetPrintTicketFromPrinter()

Hinweise

Beispielsweise kann ein Drucker zwei Klammern am linken Rand eines Blatts Papier oder einen Hefter in der oberen linken Ecke platzieren.

Ein null Wert für diese Eigenschaft bedeutet, dass diese Featureeinstellung nicht angegeben wird. Außerdem enthalten die XML-Versionen von PrintTicket (siehe SaveTo und GetXmlStream) kein Markup für dieses Feature, wenn der Wert istnull.

Diese Eigenschaft entspricht dem Schlüsselwort (keyword) des Print-SchemasJobStapleAllDocuments, nicht dem DocumentStaple Schlüsselwort (keyword).

Sie können die vom Drucker unterstützten Optionen mithilfe der StaplingCapability -Eigenschaft testen.

Gilt für:

Produkt Versionen
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9