PrintPropertyDictionary Třída

Definice

Představuje kolekci vlastností a hodnot, které jsou přidruženy k objektu System.Printing v oboru názvů.

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, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public class PrintPropertyDictionary : System.Collections.Hashtable, IDisposable
[<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
Dědičnost
PrintPropertyDictionary
Atributy
Implementuje

Příklady

Následující příklad ukazuje, jak použít tuto třídu k instalaci druhé tiskárny, která se liší ve svých vlastnostech od existující tiskárny pouze umístěním, portem a sdíleným stavem.

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()

Následující příklad ukazuje, jak použít tuto třídu ke zjišťování vlastností a typů těchto vlastností objektu systému tisku za běhu bez použití reflexe.


// 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()

Poznámky

Kolekce má podobu slovníku Hashtable . Vlastnost Value každého DictionaryEntry objektu v kolekci je instancí třídy, která je odvozena z PrintPropertytřídy .

Konstruktory

PrintPropertyDictionary()

Inicializuje novou instanci PrintPropertyDictionary třídy .

PrintPropertyDictionary(SerializationInfo, StreamingContext)

Inicializuje novou instanci PrintPropertyDictionary třídy a poskytne jí zadané SerializationInfo a StreamingContext.

Vlastnosti

comparer
Zastaralé.
Zastaralé.

Získá nebo nastaví na IComparer použití pro Hashtable.

(Zděděno od Hashtable)
Count

Získá počet párů klíč/hodnota obsažených v objektu Hashtable.

(Zděděno od Hashtable)
EqualityComparer

Získá k IEqualityComparer použití pro Hashtable.

(Zděděno od Hashtable)
hcp
Zastaralé.
Zastaralé.

Získá nebo nastaví objekt, který může vydávat hash kódy.

(Zděděno od Hashtable)
IsFixedSize

Získá hodnotu označující, zda Hashtable má pevnou velikost.

(Zděděno od Hashtable)
IsReadOnly

Získá hodnotu, která určuje, zda je Hashtable určena jen pro čtení.

(Zděděno od Hashtable)
IsSynchronized

Získá hodnotu označující, zda přístup k objektu Hashtable je synchronizován (bezpečný pro přístup z více vláken).

(Zděděno od Hashtable)
Item[Object]

Získá nebo nastaví hodnotu přidruženou k zadanému klíči.

(Zděděno od Hashtable)
Keys

Získá obsahující ICollection klíče v .Hashtable

(Zděděno od Hashtable)
SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu k .Hashtable

(Zděděno od Hashtable)
Values

Získá obsahující ICollection hodnoty v .Hashtable

(Zděděno od Hashtable)

Metody

Add(Object, Object)

Přidá prvek se zadaným klíčem a hodnotou do objektu Hashtable.

(Zděděno od Hashtable)
Add(PrintProperty)

Přidá zadaný objekt (třídy odvozené z PrintProperty) do slovníku.

Clear()

Odebere všechny elementy z kolekce Hashtable.

(Zděděno od Hashtable)
Clone()

Vytvoří mělkou kopii .Hashtable

(Zděděno od Hashtable)
Contains(Object)

Určuje, zda obsahuje Hashtable konkrétní klíč.

(Zděděno od Hashtable)
ContainsKey(Object)

Určuje, zda obsahuje Hashtable konkrétní klíč.

(Zděděno od Hashtable)
ContainsValue(Object)

Určuje, zda obsahuje Hashtable konkrétní hodnotu.

(Zděděno od Hashtable)
CopyTo(Array, Int32)

Zkopíruje elementy Hashtable do jednorozměrné Array instance v zadaném indexu.

(Zděděno od Hashtable)
Dispose()

Uvolní všechny prostředky, které používá .PrintPropertyDictionary

Dispose(Boolean)

Uvolní nespravované prostředky, které používá PrintPropertyDictionary a volitelně uvolní spravované prostředky.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí hodnotu IDictionaryEnumerator , která iteruje přes Hashtable.

(Zděděno od Hashtable)
GetHash(Object)

Vrátí kód hash pro zadaný klíč.

(Zděděno od Hashtable)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetObjectData(SerializationInfo, StreamingContext)

Naplní SerializationInfo objekt daty potřebnými k serializaci objektu PrintPropertyDictionary.

GetProperty(String)

Získá objekt (třídy odvozené z PrintProperty), která představuje zadanou vlastnost.

GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
KeyEquals(Object, Object)

Porovná konkrétní Object klíč s konkrétním klíčem v .Hashtable

(Zděděno od Hashtable)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
OnDeserialization(Object)

Implementuje ISerializable rozhraní a vyvolá událost deserializace po dokončení deserializace.

Remove(Object)

Odebere prvek se zadaným klíčem z objektu Hashtable.

(Zděděno od Hashtable)
SetProperty(String, PrintProperty)

Nastaví hodnotu zadaného atributu na objekt třídy, která je odvozena z PrintProperty.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

IEnumerable.GetEnumerator()

Vrací enumerátor procházející kolekci.

(Zděděno od Hashtable)

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky objektu na IEnumerable zadaný typ.

OfType<TResult>(IEnumerable)

Filtruje prvky objektu IEnumerable na základě zadaného typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede objekt na IEnumerableIQueryable.

Platí pro