Freigeben über


Toolboxsymbole und eingebettete Ressourcen

Aktualisiert: November 2007

In diesem Thema wird erläutert, wie mithilfe eingebetteter Ressourcen ein benutzerdefiniertes Toolboxsymbol für Ihre Windows Presentation Foundation (WPF)-Steuerelemente angegeben wird.

Namenskonvention

Sie ordnen einem benutzerdefinierten Steuerelement ein Toolboxsymbol zu, indem Sie eine Namenskonvention befolgen. Der Windows Presentation Foundation (WPF)-Designer für Visual Studio prüft die eingebetteten Ressourcen in der Assembly des Steuerelements auf eine entsprechend benannte Bilddatei.

Im einfachsten Fall fügen Sie die Bilddatei mit dem Toolboxsymbol als eingebettete Ressource dem Projekt des Steuerelements hinzu. Nennen Sie die Datei ControlName.Extension. Der WPF-Designer sucht nach einer Ressource mit einem Dateinamen, der mit dem Typnamen des Steuerelements übereinstimmt.

In der folgenden Tabelle werden die unterstützten Dateitypen für Toolboxsymbole aufgeführt.

  • XAML

  • BMP

  • GIF

  • JPG

  • JPEG

  • PNG

Weitere Informationen hierzu finden Sie unter Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten Toolboxsymbols für ein Steuerelement.

Hinweis:

Der WPF-Designer verwendet einen Vergleichsalgorithmus, um die beste Ressource für ein Toolboxsymbol zu suchen. Wenn eine Ressourcendatei keine gültige XAML oder keine gültige Bilddatei ist, wird die nächste Übereinstimmung verwendet, bis eine passende Datei gefunden wird. XAML-Bilder können keine Verweise auf Nicht-Systemtypen enthalten.

Name mit vollständiger Übereinstimmung

Die Namenskonvention für Toolboxsymbole unterstützt Ressourcennamen mit vollständiger Übereinstimmung. Für Namen mit vollständiger Übereinstimmung nehmen Sie den Namespace in den Namen des Toolboxsymbols auf, indem Sie folgende Konvention verwenden: Namespace.ControlName.Icon.Extension. Nehmen Sie als Beispiel ein Steuerelement mit dem Namen ProseControl, das im Proseware.Core.Controls-Namespace definiert wird. Ein PNG-Toolboxsymbol mit vollständiger Übereinstimmung für dieses Steuerelement würde Proseware.Core.Controls.ProseControl.Icon.png genannt werden.

Für Ressourcen konvertiert Visual Studio Ordner automatisch in Namespaces. Daher können Sie eine Ordnerstruktur im Projekt erstellen, die mit dem Namespace identisch ist. Beachten Sie, dass sich Ordner auf den Namespace auswirken, in dem eingebettete Ressourcen gefunden werden. Im vorherigen Beispiel würde der WPF-Designer nach einem Toolboxsymbol mit dem Namen Proseware.Core.Controls.Icons.ProseControl.Icon.png suchen, wenn sich die Bilddatei im Unterordner Icons befindet.

Wenn im selben Namespace wie das Steuerelement kein Bild gefunden wird, sucht der WPF-Designer nach einer niedrigen Übereinstimmung.

Name mit niedriger Übereinstimmung

Wenn der WPF-Designer keine Ressource mit vollständiger Übereinstimmung findet, sucht er in der eingebetteten Ressource nach niedrigen Übereinstimmungen. Im vorherigen Beispiel sucht der WPF-Designer zunächst nach einer Datei mit dem vollständig übereinstimmenden Namen Proseware.Core.Controls.ProseControl.Icon.Extension. Schlägt diese Suche fehl, ignoriert der WPF-Designer den Namespace und sucht lediglich anhand des Typnamens nach einem Namen. In diesem Beispiel sucht der WPF-Designer nach allen Dateien in der Ressource, die den Namen ProseControl.Icon.Extension haben. Schlägt diese Suche fehl, beginnt der WPF-Designer die Suche ab dem Standardnamespace. In diesem Beispiel sucht der WPF-Designer nach Dateien mit dem Namen Proseware.ProseControl.Icon.Extension.

Mehrere Bildgrößen

Der Bilddateinamen des Toolboxsymbols enthält möglicherweise ein optionales "Symbol"-Feld. Diese Teilzeichenfolge ermöglicht es, mehrere Bildgrößen für das Symbol anzugeben.

Für das ProseControl-Steuerelement im vorherigen Beispiel sucht der WPF-Designer die folgenden Bilder in den Ressourcen und wählt die beste Übereinstimmung im Hinblick auf die Größe aus. 

  • Proseware.Core.Controls.ProseControl.Icon.Large.png

  • Proseware.Core.Controls.ProseControl.Icon.Medium.png

  • Proseware.Core.Controls.ProseControl.Icon.ReallyLarge.png

Sie können den Punkt, der auf "Icon" folgt, auch weglassen, um die folgenden Dateinamen anzugeben.

  • Proseware.Core.Controls.ProseControl.IconLarge.png

  • Proseware.Core.Controls.ProseControl.IconMedium.png

  • Proseware.Core.Controls.ProseControl.IconReallyLarge.png

Der WPF-Designer wählt das Toolboxsymbol anhand der folgenden Regeln aus.

  1. Vektor-XAML.

  2. Genaue Übereinstimmung der Größe in beiden Dimensionen.

  3. Engste Übereinstimmung anhand von Größe und Seitenverhältnis.

Die empfohlene Bildgröße für bitmapbasierte Dateiformate ist 64 Pixel mal 64 Pixel.

Der WPF-Designer und Expression Blend verwenden verschiedene Bildgrößen für das Toolboxsymbol. Expression Blend verwendet 24x24 für die große Symbolgröße und 12x12 für die kleine Größe. Der WPF-Designer verwendet 16x16.

Wenn die vom Host gewünschte Größe 64x64 Pixel ist und Proseware.Core.Controls.ProseControl.Icon.Large.png die beste Übereinstimmung im Hinblick auf Größe und Seitenverhältnis ist, wird diese Datei verwendet. Alle Bilder in der Assembly werden untersucht. Wenn zwei Bilder mit derselben Größe und demselben Seitenverhältnis vorhanden sind, entscheidet der Host, welches Bild er verwendet.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten Toolboxsymbols für ein Steuerelement

Weitere Ressourcen

Verwenden von Ressourcen