2009-10-21 3 views
2

J'ai une application winforms mais je voudrais introduire un contrôle d'utilisateur WPF dans l'application en tant que test pour une implémentation plus poussée de WPF.Puis-je transmettre des données de Winforms à WPF Control?

Ce contrôle doit recevoir de son hôte une seule information, une chaîne. Comment puis-je passer de l'application Winforms au contrôle hébergé?

Ou, en effet, puis-je?

Répondre

2

Il est possible. Étendez votre contrôle utilisateur WPF avec des méthodes pour définir les données que vous voulez et appelez-les à partir de l'application WinForms. Voir ce article par exemple.

+0

Cela semble utile. Je vais essayer ça. –

4

Affecter les propriétés de contrôle de WPF après la création d'une instance et avant de donner la référence aux CHILDES d'hôtes

WpfUserControl ctrl = new WpfUserControl(); 
ctrl.Data = passedData; 
ElementHost1.Child = ctrl; 
+0

Cela semble également très bien, mais pas juste pour mon scénario d'utilisation à l'heure actuelle. Cependant, il pourrait un jour être un épargnant de vie. –

+0

Pourquoi cela ne correspond-il pas à votre scénario? –

+0

Mon contrôle n'a pas été ajouté dynamiquement, il était déjà sur le formulaire. L'autre réponse est maintenant utilisée et fonctionne à merveille. En fait, si je devais ajouter dynamiquement le contrôle, je donnerais probablement les propriétés réglables du contrôle comme le recommande la réponse choisie. –