DebuggerTypeProxyAttribute Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der DebuggerTypeProxyAttribute Klasse mithilfe des Proxytyps.
Überlädt
| Name | Beschreibung |
|---|---|
| DebuggerTypeProxyAttribute(String) |
Initialisiert eine neue Instanz der DebuggerTypeProxyAttribute Klasse mithilfe des Typnamens des Proxys. |
| DebuggerTypeProxyAttribute(Type) |
Initialisiert eine neue Instanz der DebuggerTypeProxyAttribute Klasse mithilfe des Proxytyps. |
DebuggerTypeProxyAttribute(String)
Initialisiert eine neue Instanz der DebuggerTypeProxyAttribute Klasse mithilfe des Typnamens des Proxys.
public:
DebuggerTypeProxyAttribute(System::String ^ typeName);
public DebuggerTypeProxyAttribute(string typeName);
new System.Diagnostics.DebuggerTypeProxyAttribute : string -> System.Diagnostics.DebuggerTypeProxyAttribute
Public Sub New (typeName As String)
Parameter
- typeName
- String
Der Typname des Proxytyps.
Hinweise
Der Debugger erstellt jedes Mal eine neue Instanz der Typ-Proxyklasse, wenn er eine Variable des Zieltyps anzeigen muss. Dies kann Auswirkungen auf die Leistung haben. Daher sollten Sie nicht mehr Arbeit im Konstruktor ausführen, als unbedingt erforderlich.
Gilt für:
DebuggerTypeProxyAttribute(Type)
Initialisiert eine neue Instanz der DebuggerTypeProxyAttribute Klasse mithilfe des Proxytyps.
public:
DebuggerTypeProxyAttribute(Type ^ type);
public DebuggerTypeProxyAttribute(Type type);
new System.Diagnostics.DebuggerTypeProxyAttribute : Type -> System.Diagnostics.DebuggerTypeProxyAttribute
Public Sub New (type As Type)
Parameter
- type
- Type
Der Proxytyp.
Ausnahmen
type ist null.
Beispiele
Das folgende Codebeispiel zeigt die Verwendung des DebuggerTypeProxyAttribute(Type) Konstruktors zum Angeben eines Debuggeranzeigeproxys. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die DebuggerDisplayAttribute Klasse bereitgestellt wird.
[DebuggerTypeProxy(typeof(HashtableDebugView))]
class MyHashtable : Hashtable
{
private const string TestString = "This should not appear in the debug window.";
internal class HashtableDebugView
{
private Hashtable hashtable;
public const string TestString = "This should appear in the debug window.";
public HashtableDebugView(Hashtable hashtable)
{
this.hashtable = hashtable;
}
[DebuggerBrowsable(DebuggerBrowsableState.RootHidden)]
public KeyValuePairs[] Keys
{
get
{
KeyValuePairs[] keys = new KeyValuePairs[hashtable.Count];
int i = 0;
foreach(object key in hashtable.Keys)
{
keys[i] = new KeyValuePairs(hashtable, key, hashtable[key]);
i++;
}
return keys;
}
}
}
}
<DebuggerDisplay("Count = {Count}"), DebuggerTypeProxy(GetType(MyHashtable.HashtableDebugView))> _
Class MyHashtable
Inherits Hashtable
Private Const TestString As String = "This should not appear in the debug window."
Friend Class HashtableDebugView
Private hashtable As Hashtable
Public Shared TestString As String = "This should appear in the debug window."
Public Sub New(ByVal hashtable As Hashtable)
Me.hashtable = hashtable
End Sub
<DebuggerBrowsable(DebuggerBrowsableState.RootHidden)> _
ReadOnly Property Keys as KeyValuePairs()
Get
Dim nkeys(hashtable.Count) as KeyValuePairs
Dim i as Integer = 0
For Each key As Object In hashtable.Keys
nkeys(i) = New KeyValuePairs(hashtable, key, hashtable(key))
i = i + 1
Next
Return nkeys
End Get
End Property
End Class
End Class
Hinweise
Der Debugger erstellt jedes Mal eine neue Instanz der Typ-Proxyklasse, wenn er eine Variable des Zieltyps anzeigen muss. Dies kann Auswirkungen auf die Leistung haben. Daher sollten Sie nicht mehr Arbeit im Konstruktor ausführen, als unbedingt erforderlich.