PrintPropertyDictionary Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
- 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. |