D'accord, donner un petit fond, j'ai appris WPF il y a environ 3 ans et nous sommes restés raisonnablement à jour avec ce qui s'est passé depuis dans diverses versions différentes. J'ai examiné (et mis en œuvre) MVVM sur quelques projets, j'ai un bon coup d'œil aux cadres comme Prism, donc je pense que je suis assez bien versé dans la plupart des régions du cadre. J'ai également travaillé brièvement sur quelques petits projets Silverlight 2.0. P>
Mon problème, je suis sur le point de commencer un travail de Silverlight lors d'une nouvelle entreprise et que je suis très à l'aise que je peux bien faire le travail, j'ai l'impression que mes connaissances WPF peuvent me causer des problèmes. Je suis allé sur le WPF / Silverlight White-Papier sur CodePlex, ce qui est excellent et vraiment utile, mais bien que cela puisse met en évidence les différences qui me laisse encore me demander comment se contenter de ces différences. p>
Par exemple, je sais que code> DataTriggers code> est manquant, comme les Alors, la question est, .. Si vous avez traversé cette transition, quelles différences vous ont causé le plus de problèmes et comment avez-vous eu l'arrivée? P> multiples code> et une gamme complète d'autres trucs. Ce que je suis intéressé à lire n'est pas les différences en soi, mais comment vous obtenez de l'arondu ces différences ou quels autres modèles sont utiles à Silverlight. Et si je
Datatriggiggiggiggiggentrez code>? Clairement, ma conception devrait prendre en compte ces éléments. P>
4 Réponses :
Donner un port Silverlight en soi pour notre application WPF, les deux points "Douleur" que nous avons rencontrés. P>
Hope this helps. P>
[Maintenant que Silverlight 4.0 a une version stable, nous avons eu quelques hoquets Visual Studio au cours des dernières versions qui se forme des heures supplémentaires. (Nous avons collé à Silverlight 3.0 et quelque part à la mi-mars a sauté à SL 4.0 bêta et la version finale)]. P>
n.b. : J'ai essayé de garder les choses de manière abstraite pour ne pas révéler l'identité du client. P>
Premièrement, alors que cela est daté de Silverlight 3, ce papier blanc passe par les différences entre WPF et Silverlight en détail: p>
Différences Microsoft WPF-Silverlight Livre blanc http://wpfslguidance.codeplex.com/relases/view/30311 P >
C'est une excellente première étape pour vous familiariser avec les différences. p>
Vous voudrez peut-être aussi jeter un coup d'œil au projet Prism. L'un des objectifs de ce projet consiste à créer un ensemble de fonctionnalités interopérables entre Silverlight et WPF afin de créer essentiellement des applications d'entreprise qui ciblent les plates-formes et réutiliser la majorité du code. Se familiariser avec le projet aidera également à mettre en évidence les différences: P>
http://compositewpf.codeplex.com/ p>
Enfin, tandis que Silverlight n'a peut-être pas de déclencheurs de données, vous pouvez utiliser une combinaison de fonctionnalités telles que des comportements et des déclencheurs: p>
http://www.silverlightshow.net /items/behaviors-and-triggers-in-silverlight-3aspx P>
et le gestionnaire Visual State (VSM): P>
http: / /timheuer.com/blog/archive/2008/06/04/Silverlight-IntroCès-Visual-State-Manager-vsm.aspx P>
Pour accomplir la plupart de ce dont vous avez besoin. p>
Tous ces éléments ne sont pas pris en charge en Silverlight et vous devez les entraîner. Chaque cas nécessite son propre jugement sur la manière de "combler les lacunes" p>
Pour la partie des déclencheurs, la seule solution consiste à utiliser VisuelleStatManger. L'article suivant donne un bon exemple de la transition des déclencheurs à VSM: http://blogs.msdn.com/b/wpfsdk/archive/2009/02/27/Le-visualstaemanager-and-triggers.aspx P >
Ensuite, OnApplyTemplate est tiré dans une commande différente, ce qui pourrait affecter les commandes personnalisées ou les usercontrols que vous auriez pu créer. P>
WPF: strong> p>
Et bien sûr, Microsoft dispose d'un article sur cela, appelé "Compatibilité WPF" et donne une vue d'ensemble plus approfondie des différences et des modifications entre WPF et Silverlight: P>
http://msdn.microsoft.com/ EN-US / Bibliothèque / CC903925 (vs.95) .aspx P>
J'espère que cela aide p>
Silverlight vous oblige à apporter des modifications à vos habitudes de conception, qui, si elles sont omniprésentes sur tout votre logiciel, peuvent rendant la réutilisation de code assez moot. P>
Par exemple, les sélecteurs de modèle de données sont manquants - j'ai trouvé que ceci soit un choc. P>