2010-02-04 9 views
1

J'ai converti image.png en image.svg en utilisant Vector Magic, puis en image.xaml en utilisant svg2xaml, qui selon this est supposé fonctionner avec Visual Studio.WPF: Utilisation d'une image convertie en graphiques vectoriels dans un fichier XAML

Après avoir ajouté image.xaml au projet et définissant son chemin de création de ressources, ajouter la ligne suivante dans mon fichier XAML:

<ContentControl Template="{StaticResource image}" /> 

Selon le tutoriel here. Mais, j'obtiens une erreur "Error 1 StaticResource reference 'image' was not found.".

Sur la page MSDN this, cela montre que ne pas ajouter une "déclaration" précédente entraîne une erreur, mais si j'ai déjà lié la ressource dans le projet, n'est-ce pas déjà fait? Je ne sais pas non plus quel type de "déclaration" il faudrait inclure, en supposant que j'en ai besoin.

Sinon, je ne sais pas ce que je fais mal.

Répondre

2

Le simple fait de marquer image.xaml avec une action de construction de "Ressource" n'en fait pas un ResourceDictionary ou de l'autoriser à être référencé dans n'importe quel fichier XAML à l'intérieur de votre projet. Pour votre code ci-dessus pour vous travailler devrez:

  1. dispose d'un fichier ResourceDictionary qui contient votre image au format XAML. La clé à l'intérieur de votre ressource à l'intérieur de ce dictionnaire doit être image. Pour un blanc ResourceDictionary pour insérer votre XAML généré, faites un clic droit sur votre projet, puis sélectionnez Ajouter -> Ressources Dictionnaire ...

  2. Inclure une référence à votre ResourceDictionary à l'intérieur de votre application/fenêtre/conteneur par le mécanisme ResourceDictionary/MergedDictionary décrit here.

Après cela, vous devriez être en mesure d'utiliser l'extension de balisage StaticResource ci-dessus dans votre ContentControl.