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

ResourceDictionary-Klasse

Stellt eine Implementierung der Hashtabellen-/Wörterbuch bereit, die WPF Ressourcen enthält, die von Komponenten und anderen Elementen einer WPF Anwendung verwendet werden. 

Namespace:  System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS für XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[LocalizabilityAttribute(LocalizationCategory.Ignore)]
[AmbientAttribute]
[UsableDuringInitializationAttribute(true)]
public class ResourceDictionary : IDictionary, 
	ICollection, IEnumerable, ISupportInitialize, IUriContext, INameScope
<ResourceDictionary .../>
<object>
  <object.resourcesProperty>
    oneOrMoreResources
  </object.resourcesProperty>
</object>

XAML-Werte

resourcesProperty

Eine Eigenschaft, die ein Eigenschaftenelement angibt, in dem der Werttyp der Eigenschaft ResourceDictionaryist. In der Regel ist dies die Resources-Eigenschaft von FrameworkElement oder FrameworkContentElementoder Application in einem Anwendungsressourcen kasten.

oneOrMoreResources

Eine oder mehrere Ressourcen angegeben als Objektelemente. Jede Ressource, die Sie angeben, muss zugewiesen haben x:Key-Direktive.

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

  NameBeschreibung
Öffentliche MethodeResourceDictionaryInitialisiert eine neue Instanz der ResourceDictionary-Klasse.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftCountRuft die Anzahl von Einträgen im Basis- ResourceDictionaryab.
Öffentliche EigenschaftDeferrableContentInfrastruktur. Ruft den Text ab oder legt den deferrable Inhalt dieses Ressourcenwörterbuch fest.
Öffentliche EigenschaftIsFixedSizeRuft ab, ob dieser ResourceDictionary eine feste Größe hat.
Öffentliche EigenschaftIsReadOnlyRuft ab, ob dieser ResourceDictionary schreibgeschützt ist.
Öffentliche EigenschaftItem Ruft den Text ab oder legt den Wert fest, der dem angegebenen Schlüssel zugeordnet ist.
Öffentliche EigenschaftKeysRuft eine Auflistung aller Schlüssel ab, die in diesem ResourceDictionaryenthalten sind.
Öffentliche EigenschaftMergedDictionariesRuft eine Auflistung der ResourceDictionary Wörterbücher ab, die die verschiedenen Ressourcenwörterbücher in den zusammengeführten Wörterbüchern bilden.
Öffentliche EigenschaftSourceRuft ab oder legt fest Uniform Resource Identifier (URI), um Ressourcen laden aus.
Öffentliche EigenschaftValues Ruft eine Auflistung aller Werte ab, die dem Schlüssel zugeordnet sind, die in diesem ResourceDictionaryenthalten sind.
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeAddFügt diesem ResourceDictionaryeine Ressource nach Schlüssel hinzu.
Öffentliche MethodeBeginInitBeginnt die Initialisierung für dieses ResourceDictionary.
Öffentliche MethodeClearLöscht alle Schlüssel und Werte (Basis-) in ResourceDictionary. Dies führt nicht klar alle zusammengeführten Wörterbuch von Elementen.
Öffentliche MethodeContainsBestimmt, ob ResourceDictionary ein Element mit dem angegebenen Schlüssel enthält.
Öffentliche MethodeCopyToKopiert die Elemente ResourceDictionary in ein eindimensionales DictionaryEntry am angegebenen Index.
Öffentliche MethodeEndInitBeendet die Initialisierung und ungültig macht die vorherige Struktur so, dass alle Änderungen, die an den Schlüsseln während der Initialisierung vorgenommene erklärt werden können.
Öffentliche MethodeEquals(Object)Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.)
Geschützte MethodeFinalize Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.)
Öffentliche MethodeFindNameUnterstützt nicht von dieser Implementierung eines Wörterbuchs.
Öffentliche MethodeGetEnumeratorGibt IDictionaryEnumerator zurück, das verwendet werden kann, um ResourceDictionaryzu durchlaufen.
Öffentliche MethodeGetHashCodeFungiert als die Standardhashfunktion. (Von Object geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Geschützte MethodeMemberwiseCloneErstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Geschützte MethodeOnGettingValueTritt auf, wenn eine Anforderung einer Ressource ResourceDictionary empfängt.
Öffentliche MethodeRegisterNameUnterstützt nicht von dieser Implementierung eines Wörterbuchs.
Öffentliche MethodeRemoveEntfernt den Eintrag mit dem angegebenen Schlüssel aus dem Basiswörterbuch.
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Öffentliche MethodeUnregisterNameUnterstützt nicht von dieser Implementierung eines Wörterbuchs.
Zum Seitenanfang

  NameBeschreibung
Öffentliche ErweiterungsmethodeAsParallelErmöglicht die Parallelisierung einer Abfrage. (Durch ParallelEnumerable definiert.)
Öffentliche ErweiterungsmethodeAsQueryableKonvertiert ein IEnumerable in ein IQueryable. (Durch Queryable definiert.)
Öffentliche ErweiterungsmethodeCast<TResult>Wandelt die Elemente eines IEnumerable in den angegebenen Typ um. (Durch Enumerable definiert.)
Öffentliche ErweiterungsmethodeOfType<TResult>Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs. (Durch Enumerable definiert.)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate MethodeICollection.CopyToInfrastruktur. Eine Beschreibung dieses Members finden Sie unter ICollection.CopyTo.
Explizite SchnittstellenimplementierungPrivate EigenschaftICollection.IsSynchronizedInfrastruktur. Eine Beschreibung dieses Members finden Sie unter ICollection.IsSynchronized.
Explizite SchnittstellenimplementierungPrivate EigenschaftICollection.SyncRootEine Beschreibung dieses Members finden Sie unter ICollection.SyncRoot.
Explizite SchnittstellenimplementierungPrivate MethodeIEnumerable.GetEnumeratorInfrastruktur. Eine Beschreibung dieses Members finden Sie unter IEnumerable.GetEnumerator.
Explizite SchnittstellenimplementierungPrivate EigenschaftIUriContext.BaseUriEine Beschreibung dieses Members finden Sie unter IUriContext.BaseUri.
Zum Seitenanfang

Die Elemente in ResourceDictionary werden nicht sofort verarbeitet, wenn Anwendungscode aus einem XAML Ladeprogramm geladen wird. Stattdessen permanent ist ResourceDictionary als Objekt, und die einzelnen Werte werden nur verarbeitet, wenn sie ausdrücklich angefordert werden.

Die ResourceDictionary-Klasse kann nicht aus DictionaryBaseabgeleitet. Stattdessen implementiert die ResourceDictionary-Klasse, IDictionary stützt sich auf Hashtable jedoch intern.

In Extensible Application Markup Language (XAML)ist die ResourceDictionary-Klasse i. d. R. ein implizites Auflistungselement elementwert Objekt, das der Resources einiger Eigenschaften angegeben ist, wenn in der Eigenschaftenelementsyntax. Ausführliche Informationen über implizite Auflistungen in XAML, finden Sie Ausführliche Erläuterung der XAML-Syntaxweitere Informationen. Eine Ausnahme liegt vor, wenn Sie ein zusammengeführtes Wörterbuch festlegen möchten. Ausführliche Informationen finden Sie Zusammengeführte Ressourcenwörterbücherunter.

Eine weitere mögliche Verwendung XAML ein Ressourcenwörterbuch als diskrete XAMLDatei zu deklarieren, und laden Sie es zur Laufzeit mit Load oder schließen Sie sie (in einem Projekt vollständig vertrauenswürdigem) oder als Ressource Lösen Sie Datei. In diesem Fall kann ResourceDictionary als Objektelement deklariert werden und als Stammelement XAMLdienen. Sie müssen die entsprechenden XML-Namespace Attributwerte (Standard für den WPF Namespace und in der Regel XAML für den x:-Namespace) für das Element assoziieren ResourceDictionary, wenn Sie es als Stammelement verwendet werden soll. Anschließend können Sie untergeordnete Elemente, die die Ressourcen hinzufügen mit einem einzelnen definieren x: Schlüssel-Wert.

In diesem Beispiel wird veranschaulicht, wie Sie Anwendungsressourcen verwenden.

Im folgenden Beispiel wird eine Anwendungsdefinitionsdatei veranschaulicht. Die Anwendungsdefinitionsdatei definiert einen Ressourcenabschnitt (einen Wert für die Resources-Eigenschaft). Auf Anwendungsebene definierte Ressourcen können von allen anderen zur Anwendung gehörenden Seiten aufgerufen werden. In diesem Fall ist die Ressource ein deklarierter Stil. Da ein vollständiger Stil, der eine Steuerelementvorlage enthält, sehr lang sein kann, wird in diesem Beispiel auf die Steuerelementvorlage verzichtet, die im ContentTemplate-Eigenschaftensetter des Stils definiert ist.


<Application.Resources>
  <Style TargetType="Button" x:Key="GelButton" >
    <Setter Property="Margin" Value="1,2,1,2"/>
    <Setter Property="HorizontalAlignment" Value="Left"/>
    <Setter Property="Template">
      <Setter.Value>


...


      </Setter.Value>
    </Setter>
  </Style>
</Application.Resources>


Im folgenden Beispiel wird eine XAML-Seite veranschaulicht, die auf die im vorherigen Beispiel definierte Ressource auf Anwendungsebene verweist. Auf die Ressource wird mithilfe einer StaticResource-Markuperweiterung verwiesen, die einen eindeutigen Ressourcenschlüssel für die angeforderte Ressource angibt. Auf der aktuellen Seite wird keine Ressource mit dem Schlüssel "GelButton" gefunden. Daraufhin wird der Ressourcensuchbereich für die angeforderte Ressource über die aktuelle Seite hinaus auf die definierten Ressourcen der Anwendungsebene ausgedehnt.


<StackPanel
  Name="root"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  >
  <Button Height="50" Width="250" Style="{StaticResource GelButton}" Content="Button 1" />
  <Button Height="50" Width="250" Style="{StaticResource GelButton}" Content="Button 2" />
</StackPanel>


.NET Framework

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

.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
Anzeigen:
© 2015 Microsoft