Partager via


PrintPropertyDictionary Classe

Définition

Représente une collection de propriétés et de valeurs associées à un objet dans l’espace System.Printing de noms.

public ref class PrintPropertyDictionary : System::Collections::Hashtable, IDisposable
public ref class PrintPropertyDictionary : System::Collections::Hashtable, IDisposable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
[System.Serializable]
public class PrintPropertyDictionary : System.Collections.Hashtable, IDisposable
public class PrintPropertyDictionary : System.Collections.Hashtable, IDisposable
public class PrintPropertyDictionary : System.Collections.Hashtable, IDisposable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[<System.Serializable>]
type PrintPropertyDictionary = class
    inherit Hashtable
    interface ISerializable
    interface IDeserializationCallback
    interface IDisposable
type PrintPropertyDictionary = class
    inherit Hashtable
    interface IDisposable
    interface IDeserializationCallback
    interface ISerializable
Public Class PrintPropertyDictionary
Inherits Hashtable
Implements IDisposable
Public Class PrintPropertyDictionary
Inherits Hashtable
Implements IDeserializationCallback, IDisposable, ISerializable
Héritage
PrintPropertyDictionary
Attributs
Implémente

Exemples

L’exemple suivant montre comment utiliser cette classe pour installer une deuxième imprimante qui diffère de ses propriétés d’une imprimante existante uniquement à l’emplacement, au port et à l’état partagé.

LocalPrintServer myLocalPrintServer = new LocalPrintServer(PrintSystemDesiredAccess.AdministrateServer);
PrintQueue sourcePrintQueue = myLocalPrintServer.DefaultPrintQueue;
PrintPropertyDictionary myPrintProperties = sourcePrintQueue.PropertiesCollection;

// Share the new printer using Remove/Add methods
PrintBooleanProperty shared = new PrintBooleanProperty("IsShared", true);
myPrintProperties.Remove("IsShared");
myPrintProperties.Add("IsShared", shared);

// Give the new printer its share name using SetProperty method
PrintStringProperty theShareName = new PrintStringProperty("ShareName", "\"Son of " + sourcePrintQueue.Name +"\"");
myPrintProperties.SetProperty("ShareName", theShareName);

// Specify the physical location of the new printer using Remove/Add methods
PrintStringProperty theLocation = new PrintStringProperty("Location", "the supply room");
myPrintProperties.Remove("Location");
myPrintProperties.Add("Location", theLocation);

// Specify the port for the new printer
String[] port = new String[] { "COM1:" };

// Install the new printer on the local print server
PrintQueue clonedPrinter = myLocalPrintServer.InstallPrintQueue("My clone of " + sourcePrintQueue.Name, "Xerox WCP 35 PS", port, "WinPrint", myPrintProperties);
myLocalPrintServer.Commit();

// Report outcome
Console.WriteLine("{0} in {1} has been installed and shared as {2}", clonedPrinter.Name, clonedPrinter.Location, clonedPrinter.ShareName);
Console.WriteLine("Press Return to continue ...");
Console.ReadLine();
Dim myLocalPrintServer As New LocalPrintServer(PrintSystemDesiredAccess.AdministrateServer)
Dim sourcePrintQueue As PrintQueue = myLocalPrintServer.DefaultPrintQueue
Dim myPrintProperties As PrintPropertyDictionary = sourcePrintQueue.PropertiesCollection

' Share the new printer using Remove/Add methods
Dim [shared] As New PrintBooleanProperty("IsShared", True)
myPrintProperties.Remove("IsShared")
myPrintProperties.Add("IsShared", [shared])

' Give the new printer its share name using SetProperty method
Dim theShareName As New PrintStringProperty("ShareName", """Son of " & sourcePrintQueue.Name & """")
myPrintProperties.SetProperty("ShareName", theShareName)

' Specify the physical location of the new printer using Remove/Add methods
Dim theLocation As New PrintStringProperty("Location", "the supply room")
myPrintProperties.Remove("Location")
myPrintProperties.Add("Location", theLocation)

' Specify the port for the new printer
Dim port() As String = { "COM1:" }


' Install the new printer on the local print server
Dim clonedPrinter As PrintQueue = myLocalPrintServer.InstallPrintQueue("My clone of " & sourcePrintQueue.Name, "Xerox WCP 35 PS", port, "WinPrint", myPrintProperties)
myLocalPrintServer.Commit()

' Report outcome
Console.WriteLine("{0} in {1} has been installed and shared as {2}", clonedPrinter.Name, clonedPrinter.Location, clonedPrinter.ShareName)
Console.WriteLine("Press Return to continue ...")
Console.ReadLine()

L’exemple suivant montre comment utiliser cette classe pour découvrir au moment de l’exécution les propriétés et les types de ces propriétés, d’un objet système d’impression, sans utiliser de réflexion.


// Enumerate the properties, and their types, of a queue without using Reflection
LocalPrintServer localPrintServer = new LocalPrintServer();
PrintQueue defaultPrintQueue = LocalPrintServer.GetDefaultPrintQueue();

PrintPropertyDictionary printQueueProperties = defaultPrintQueue.PropertiesCollection;

Console.WriteLine("These are the properties, and their types, of {0}, a {1}", defaultPrintQueue.Name, defaultPrintQueue.GetType().ToString() +"\n");

foreach (DictionaryEntry entry in printQueueProperties)
{
    PrintProperty property = (PrintProperty)entry.Value;

    if (property.Value != null)
    {
        Console.WriteLine(property.Name + "\t(Type: {0})", property.Value.GetType().ToString());
    }
}
Console.WriteLine("\n\nPress Return to continue...");
Console.ReadLine();

' Enumerate the properties, and their types, of a queue without using Reflection
Dim localPrintServer As New LocalPrintServer()
Dim defaultPrintQueue As PrintQueue = LocalPrintServer.GetDefaultPrintQueue()

Dim printQueueProperties As PrintPropertyDictionary = defaultPrintQueue.PropertiesCollection

Console.WriteLine("These are the properties, and their types, of {0}, a {1}", defaultPrintQueue.Name, defaultPrintQueue.GetType().ToString() + vbLf)

For Each entry As DictionaryEntry In printQueueProperties
    Dim [property] As PrintProperty = CType(entry.Value, PrintProperty)

    If [property].Value IsNot Nothing Then
        Console.WriteLine([property].Name & vbTab & "(Type: {0})", [property].Value.GetType().ToString())
    End If
Next entry
Console.WriteLine(vbLf & vbLf & "Press Return to continue...")
Console.ReadLine()

Remarques

La collection prend la forme d’un Hashtable dictionnaire. La Value propriété de chaque DictionaryEntry élément de la collection est une instance d’une classe dérivée de PrintProperty.

Constructeurs

Nom Description
PrintPropertyDictionary()

Initialise une nouvelle instance de la classe PrintPropertyDictionary.

PrintPropertyDictionary(SerializationInfo, StreamingContext)

Initialise une nouvelle instance de la PrintPropertyDictionary classe et la fournit avec les éléments spécifiés SerializationInfo et StreamingContext.

Propriétés

Nom Description
comparer
Obsolète.
Obsolète.

Obtient ou définit la IComparer valeur à utiliser pour le Hashtable.

(Hérité de Hashtable)
Count

Obtient le nombre de paires clé/valeur contenues dans le Hashtable.

(Hérité de Hashtable)
EqualityComparer

Obtient la IEqualityComparer valeur à utiliser pour le Hashtable.

(Hérité de Hashtable)
hcp
Obsolète.
Obsolète.

Obtient ou définit l’objet qui peut distribuer des codes de hachage.

(Hérité de Hashtable)
IsFixedSize

Obtient une valeur indiquant si la Hashtable taille est fixe.

(Hérité de Hashtable)
IsReadOnly

Obtient une valeur indiquant si l’objet Hashtable est en lecture seule.

(Hérité de Hashtable)
IsSynchronized

Obtient une valeur indiquant si l’accès à l’objet Hashtable est synchronisé (thread safe).

(Hérité de Hashtable)
Item[Object]

Obtient ou définit la valeur associée à la clé spécifiée.

(Hérité de Hashtable)
Keys

Obtient une ICollection valeur contenant les clés dans le Hashtable.

(Hérité de Hashtable)
SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l’accès Hashtableau .

(Hérité de Hashtable)
Values

Obtient une ICollection valeur contenant les valeurs dans le Hashtable.

(Hérité de Hashtable)

Méthodes

Nom Description
Add(Object, Object)

Ajoute un élément avec la clé et la valeur spécifiées dans le Hashtable.

(Hérité de Hashtable)
Add(PrintProperty)

Ajoute l’objet spécifié (d’une classe dérivée de PrintProperty) dans le dictionnaire.

Clear()

Supprime tous les éléments du Hashtable.

(Hérité de Hashtable)
Clone()

Crée une copie superficielle du Hashtable.

(Hérité de Hashtable)
Contains(Object)

Détermine si le Hashtable conteneur contient une clé spécifique.

(Hérité de Hashtable)
ContainsKey(Object)

Détermine si le Hashtable conteneur contient une clé spécifique.

(Hérité de Hashtable)
ContainsValue(Object)

Détermine si la Hashtable valeur contient une valeur spécifique.

(Hérité de Hashtable)
CopyTo(Array, Int32)

Copie les Hashtable éléments dans une instance unidimensionnelle Array à l’index spécifié.

(Hérité de Hashtable)
Dispose()

Libère toutes les ressources utilisées par le PrintPropertyDictionary.

Dispose(Boolean)

Libère les ressources non managées utilisées par les PrintPropertyDictionary ressources gérées et les libère éventuellement.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetEnumerator()

Retourne un itération qui effectue une IDictionaryEnumerator itération dans le Hashtable.

(Hérité de Hashtable)
GetHash(Object)

Retourne le code de hachage de la clé spécifiée.

(Hérité de Hashtable)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)

Remplit une SerializationInfo avec les données nécessaires pour sérialiser le PrintPropertyDictionary.

GetProperty(String)

Obtient l’objet (d’une classe dérivée de PrintProperty) qui représente la propriété spécifiée.

GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
KeyEquals(Object, Object)

Compare une clé spécifique Object à une clé spécifique dans le Hashtable.

(Hérité de Hashtable)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
OnDeserialization(Object)

Implémente l’interface ISerializable et déclenche l’événement de désérialisation lorsque la désérialisation est terminée.

Remove(Object)

Supprime l’élément avec la clé spécifiée du Hashtable.

(Hérité de Hashtable)
SetProperty(String, PrintProperty)

Définit la valeur de l’attribut spécifié sur un objet d’une classe dérivée de PrintProperty.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
IEnumerable.GetEnumerator()

Retourne un énumérateur qui itère dans une collection.

(Hérité de Hashtable)

Méthodes d’extension

Nom Description
AsParallel(IEnumerable)

Active la parallélisation d’une requête.

AsQueryable(IEnumerable)

Convertit un IEnumerableIQueryableen .

Cast<TResult>(IEnumerable)

Convertit les éléments d’un IEnumerable type spécifié.

OfType<TResult>(IEnumerable)

Filtre les éléments d’un IEnumerable type spécifié.

S’applique à