2009-12-23 6 views
1

J'ai un modèle de données WPF défini dans ma section Windows.Resources.WPF - Get DataTemplate sans événement

Je voudrais accéder à ceci (vraiment une zone de liste là-dessus) via le code derrière. Comment puis-je faire ceci?

Je ne peux pas obtenir ce que je veux via un événement parce que je veux obtenir la référence dans l'étape complétée d'un BackGroundWorker. (C'est-à-dire aucun expéditeur (c'est-à-dire un élément d'interface utilisateur) pour partir de là).

Comment puis-je obtenir une référence à cela?

J'ai essayé:

myContainingPanel.Template.Find("lstBox", myContainingPanel); 

et (Tiré de here):

ContentPresenter contentPresenter = myContainingPanel.FindVisualChild<ContentPresenter>(); 
DataTemplate template = contentPresenter.ContentTemplate; 
return (T) template.FindName(name, contentPresenter); 

J'accepterais une réponse qui me dit que je devrais utiliser MVVM s'il y a un bon exemple montrant comment cela pourrait travailler (avec un événement d'arrière-plan complété).

Merci pour toute aide

Répondre

2

FrameworkElement.FindResource() devraient fonctionner. Trouver des modèles de données de viewmodel ne me semble pas juste. Qu'essayez-vous de faire?

+0

C'est sympa, mais il suffit d'obtenir la ressource (tout ce qu'il contient est vide). J'ai besoin de modèle rempli réel. – Vaccano