En ce qui concerne Silverlight, je vais vous faire part de mon expérience jusqu'à présent. (NB : En relisant ce texte, il semble un peu négatif, mais je ne fais que souligner les fonctionnalités manquantes. Dans l'ensemble, j'aime Silverlight, une interface utilisateur riche dans le navigateur en utilisant C# ? Rocks).
Les différences notables sont qu'il n'y a pas de clic droit, de prise en charge de la molette de la souris, de fonctionnalité d'impression et que vous ne pouvez pas ouvrir une nouvelle fenêtre. Votre application SL OOB ne peut pas se trouver dans la zone de notification. Vous pouvez gérer les événements de la souris en javascript mais pas si vous voulez que votre application se déplace en OOB.
L'équipe SL semble également trop préoccupée par la sécurité, au point d'entraver son aptitude à la LOB (pas de nouveau Windows, paramètres de confiance pour l'accès au système local dans l'OOB, zone de notification, etc.)
Certains d'entre eux donnent l'impression qu'une application Silverlight n'est pas compatible avec Windows. Pensez au texte en surbrillance, à la copie par clic droit. Ou le clic droit pour coller. Ces opérations de base que beaucoup de gens utilisent manquent. On a également l'impression d'une expérience d'interface utilisateur étrangère, par exemple lorsqu'on fait instinctivement défiler une grille avec la molette de la souris et que cela ne fonctionne pas. Ce genre de choses fonctionne dans n'importe quel tableau dans un navigateur, mais pas dans SL.
En ce qui concerne la programmation, je n'ai pas beaucoup utilisé WPF, mais d'après ce que je sais, il existe des différences significatives dans la manière d'aborder certains problèmes.
Les extensions de balisage sont absentes dans SL. Il ne dispose également que d'une liaison indexée sur les nombres entiers, ce qui signifie qu'il n'y a pas de sacs de propriétés sans quelques astuces. Il n'y a pas de déclencheurs, ce qui signifie que vous devez toujours écrire du code pour connecter les événements (irritant pour les pages plus dynamiques). . Il n'y a pas de style héritable, à l'exception de l'ImplicitStyleManager de la boîte à outils, qui n'est pas à la hauteur.
Ainsi, pour certaines applications LOB, c'est très bien, pour d'autres, il faut franchir quelques obstacles (par exemple, si vous voulez une personnalisation pour le client). Mais ce n'est certainement pas une bonne solution pour TOUTES les applications LOB.
J'ai aussi l'impression que la SL n'est pas encore terminée, il y a beaucoup d'imperfections. Par exemple, la grille de données est frustrante (elle ne s'étend pas automatiquement et il est très difficile de la sous-classer), la boîte de saisie automatique est un peu erratique, le cadre de navigation est un peu lourd, les combobox/treeviews sont difficiles à lier (ils n'ont pas encore trouvé comment lier SelectedItem à un objet différent de ItemsSource).
Dans l'ensemble, Silverlight est presque là, c'est parfait tant que vous êtes prêt à accepter quelques limitations et imperfections.