Je travaille sans mélange d'expression et juste en utilisant l'éditeur XAML dans VS2010. La sagesse de ce côté, je vois de plus en plus un besoin de liaison de données au moment du design. Pour les cas simples, la propriété FallbackValue
fonctionne très bien (TextBox et TextBlocks, etc.). Mais surtout face à ItemsControl
et autres, on a vraiment besoin des données d'échantillon pour être visible dans le concepteur afin que vous puissiez ajuster et modifier les contrôles et les modèles de données sans avoir à exécuter l'exécutable. Je sais que ObjectDataProvider
permet de lier un type, et peut donc fournir des données de conception pour la visualisation, mais il y a aussi du jonglage pour permettre aux vraies données d'exécution de se lier sans gaspiller de ressources en chargeant le chargement à la fois l'heure de conception, les données facturées et les liaisons d'exécution. Vraiment ce que je veux, c'est la possibilité d'avoir, disons, "John", "Paul", "George", et "Ringo" apparaître dans le concepteur XAML comme éléments stylables dans mon ItemsControl
, mais ont des données réelles apparaît lorsque l'application s'exécute.Quelles approches sont disponibles pour les données de conception fictives dans WPF?
Je sais aussi que Blend permet certains attributs de fantaisie qui définissent la liaison de données temps de conception qui sont effectivement ignorées par WPF dans des conditions d'exécution.
Mes questions sont les suivantes:
1. Comment pourrais-je tirer parti des liaisons à temps la conception des collections et des données non triviales dans le concepteur XAML studio visuel, puis échanger à la durée d'exécution des liaisons en douceur?
2. Comment d'autres personnes ont-elles résolu ce problème de temps de conception par rapport au temps d'exécution? Dans mon cas, je ne peux pas très facilement utiliser les mêmes données pour les deux (comme on pourrait, par exemple, avec une requête de base de données).
3. sont leurs solutions de rechange à un mélange d'expression que je pourrais utiliser pour la conception XAML données intégrée? (je sais qu'il ya des solutions de rechange, mais je veux en particulier quelque chose que je peux utiliser et voir les données liées d'échantillons, etc.?)
Oui. Je pense que c'est le gagnant nouveau et clair. L'autre truc était des solutions de contournement, c'est plus "officiellement supporté" – el2iot2
Si vous rencontrez des problèmes en utilisant 'd: DataContext' vous pouvez trouver de l'aide dans cette question: http://stackoverflow.com/questions/8303803/setting-design- time-datacontext-on-a-window-is-giving-a-compiler-error –
Cet exemple ne provoquerait-il pas le chargement d'une instance de MockXViewModel dans vos ressources pour une version release? Est-ce que ce n'est pas une préoccupation? – jpierson