(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

AmbientAttribute-Klasse

Gibt an, dass eine Eigenschaft oder Typ als Ambiente behandelt werden soll. Das Ambientekonzept bezieht sich darauf, wie XAML-Prozessoren Typbesitzer von Membern bestimmen.

System.Object
  System.Attribute
    System.Windows.Markup.AmbientAttribute

Namespace:  System.Windows.Markup
Assembly:  System.Xaml (in System.Xaml.dll)
XMLNS für XAML: Keinem xmlns zugeordnet.

[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method|AttributeTargets.Property, Inherited = true)]
public sealed class AmbientAttribute : Attribute

Der AmbientAttribute-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeAmbientAttributeInitialisiert eine neue Instanz der AmbientAttribute-Klasse.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftTypeIdBei Implementierung in einer abgeleiteten Klasse wird ein eindeutiger Bezeichner für dieses Attribute abgerufen. (Von Attribute geerbt.)
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeEqualsInfrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.)
Öffentliche MethodeGetHashCodeGibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeIsDefaultAttributeBeim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.)
Öffentliche MethodeMatchBeim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetIDsOfNamesOrdnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoRuft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoCountRuft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.InvokeStellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.)
Zum Seitenanfang

Eine Ambient-Eigenschaft ist eine Eigenschaft, bei der der Wert im Parserkontext beim Erstellen eines Objektdiagramms erwartungsgemäß verfügbar ist, aber bei der zu Zwecken der unmittelbaren XAML-Knotengruppe, die erstellt wird, die typische Typmembersuche angehalten wird. Es gibt zwei Hauptszenarien für das Ambient-Konzept.

  • Eine andere Eigenschaft des gleichen Objekts beeinflusst und qualifiziert, wie diese Objekteigenschaftssuche funktionieren sollte.

  • Die Eigenschaft stellt einen größeren Aufschiebungsmechanismus bereit, und die Umgebungsfunktionen zum Nachschlagen eines Memberwerts werden für alle im aktuellen Objekt enthaltenen Objekte erweitert.

Dieses Attribut kann für bestimmte Eigenschaften, die Container erwartet haben, die ein Ambient-Eigenschaften-Suchverhalten aktivieren, oder für die Containertypklasse übernommen werden, um das Ambient-Eigenschaften-Verhalten in allen Fällen dieses Werttyps für eine Eigenschaft aktivieren.

AmbientAttribute kann auch für eine CLR-Methode übernommen werden, um das Attributieren einer angefügten XAML-Eigenschaft als ambient zu unterstützen. Dies ist potenziell notwendig, da eine angefügte XAML-Eigenschaft in einer CLR-Implementierung implementiert/dargestellt wird, um ein Accessormuster mit der get-Methode und der set-Methode wiederzugeben. Es ist keine tatsächliche CLR-Eigenschaft zum Zuschreiben vorhanden. Deshalb würde das Einschränken der Verwendung für AttributeTargets zu Property das Angeben eines anfügbaren Members als Ambient nicht aktiviert. Schreiben Sie für einen anfügbaren Member, den Sie als Umgebung melden möchten, den get zu. Sie sollten nicht versuchen, Methoden mit Attributen zu versehen, die nicht ausdrücklich Methoden anfügbarer Member unterstützen.

In früheren Versionen von .NET Framework war diese Klasse in der WPF-spezifischen Assembly WindowsBase vorhanden. In .NET Framework 4 befindet sich AmbientAttribute in der System.Xaml-Assembly. Weitere Informationen finden Sie unter Aus WPF zu System.Xaml migrierte Typen.

Umgebungstypen (Typen, bei denen AmbientAttribute auf Typebene übernommen wird) können für bestimmte XAML-Verarbeitungssituationen verwendet werden, in denen der Typ einer Eigenschaft außer der Reihenfolge aufgelöst werden muss.

Objektwriter-Szenarien

Wenn Sie einen XAML-Objektwriter definieren und Sie auf eine Eigenschaft, Methode oder einen Typ stoßen, auf den AmbientAttribute angewendet wurde, müssen Sie in der Regel auf einen Dienst zugreifen, um das beabsichtigte Suchverhalten für Ambient-Eigenschaften zu bestimmen, das zum Ausschreiben von Objekten benötigt wird. Weitere Informationen finden Sie unter IAmbientProvider.

Wertkonverter

Typkonverter oder Markuperweiterungen müssen u. U. die Umgebungsinformationen kennen, um Eigenschaften zu verarbeiten, die indirekte Typzuordnungen darstellen, beispielsweise Eigenschaften, die Member oder Typen anhand von Zeichenfolgennamen mit oder ohne Qualifizierung angeben. In diesem Szenario ist AmbientAttribute nicht dazu gedacht, direkt für Wertkonvertercodelogik verwendet zu werden. Stattdessen sollte der Wertkonverter auf dem XAML-Writerverarbeitungsverhalten beruhen, das beim Aufruf IAmbientProvider in seinen Dienstkontexten an die Wertkonvertermethoden übergibt.

WPF-Szenarien für AmbientAttribute

  • Eine Eigenschaft eines Style (TargetType) kann die Suchvorgänge für Eigenschaftennamen qualifizieren, die für die Suche nach Sicherungsverweisen für Eigenschaftennamen in Setter.Property benötigt werden.

  • Der gesamte Inhalt einer Resources-Eigenschaft (Elemente eines ResourceDictionary) sowie der Vorlageninhalt sollten auf andere Peers als Werte zugreifen. Das Deklarieren der ganzen Resources-Eigenschaft als ambient ruft Logik auf, die dies im WPF-XAML-Parser aktiviert.

Ein Beispiel für ein Szenario zum Festlegen von AmbientAttribute auf Typebene finden Sie unter ResourceDictionary.

.NET Framework

Unterstützt in: 4.5, 4, 3.5 SP1, 3.0 SP2

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2014 Microsoft