2009-02-17 5 views
2

Ok, cette question était vraiment difficile à poser en une ligne. Voici l'affaire. Si j'ai cette XAML:Pourquoi ne puis-je pas définir un ResourceDictionary en XAML et l'instancier par lui-même?

<ResourceDictionary 
    x:Class="MyAssembly.MiscResources"  
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 

    <SolidColorBrush x:Key="MyBrush" Color="Purple" />  

</ResourceDictionary> 

Puis-je cela dans une C#:

dict est créé et semble fonctionner normalement, mais il a 0 éléments. Non pas que ce soit un comportement nécessaire, mais je ne comprends absolument pas pourquoi cela ne fonctionne pas. Quel morceau de ceci suis-je manquant?

Répondre

6

vous manque l'appel à InitializeComponent() dans votre classe partielle pour

ResourceDictionary
namespace YourNameSpace 
{ 
    public partial class someClassName: ResourceDictionary 
    { 
     public someClassName() 
     { 
      InitializeComponent(); // you need this for the LoadComponent call on the Baml.. 
     } 
    } 
} 
+0

Ah, vous avez raison. Je n'avais pas réalisé que c'était l'élément important pour assembler toutes les pièces. Je pensais que c'était un peu plus magique. Merci pour cela, AppleDrink. Je pensais que personne ne trouverait de réponse à cette question. Tu es mon héro. – MojoFilter

Questions connexes