2009-03-31 3 views
2

Je rencontre un problème lors de la création d'une ressource dans mon fichier App.xaml. Mon problème est que je veux instancier un objet qui nécessite un paramètre dans son constructeur (mon Linq-to-SQL DataContext, dans ce cas particulier), mais je ne sais pas s'il est même possible de passer des paramètres comme celui-ci en XAML. Est-ce que quelqu'un sait d'un moyen de contourner cela? Je voudrais accéder à ce contexte de données dans mon XAML globalement, l'idée étant que je peux passer comme paramètre à ObjectDataSource:WPF: Création d'une ressource d'application nécessitant un paramètre dans le constructeur - comment?

<ObjectDataProvider x:Key="PriceCodeProvider" x:Name="priceCodeProvider" ObjectType="{x:Type local:PriceCodeObjectDataProvider}" > 
     <ObjectDataProvider.ConstructorParameters> 
      <StaticResource ResourceKey="MyDataContext" /> 
     </ObjectDataProvider.ConstructorParameters> 
    </ObjectDataProvider> 

Du point de vue de la conception, je suis sûr qu'il ya de meilleures façons de j'accomplis ce que je cherche, mais je suis assez nouveau pour WPF ... et avec un peu d'aide, je pense que cela fera l'affaire pour mon projet particulier.

Merci!

-Charles

Répondre

0

XAML ne permet pas de passer des arguments du constructeur. Vous devez créer une classe wrapper, définir les propriétés, puis votre wrapper peut appeler le constructeur ObjectDataProvider correctement.

Questions connexes