PrintSystemObject.PropertiesCollection 属性

定义

获取特性和值对的集合。Gets a collection of attribute and value pairs.

public:
 property System::Printing::IndexedProperties::PrintPropertyDictionary ^ PropertiesCollection { System::Printing::IndexedProperties::PrintPropertyDictionary ^ get(); };
public System.Printing.IndexedProperties.PrintPropertyDictionary PropertiesCollection { get; }
member this.PropertiesCollection : System.Printing.IndexedProperties.PrintPropertyDictionary
Public ReadOnly Property PropertiesCollection As PrintPropertyDictionary

属性值

包含特性和值对的 PrintPropertyDictionaryA PrintPropertyDictionary that contains attribute and value pairs.

示例

下面的示例演示如何使用此属性在运行时发现打印系统对象的属性和这些属性的类型,而无需使用反射。The following example shows how to use this property to discover at run time the properties, and the types of those properties, of a print system object, without using reflection.


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

适用于