Sto lavorando senza l'espressione blend e sto usando l'editor XAML in vs2010. La saggezza di questo a parte, sto vedendo sempre più un'esigenza di associazione dei dati in fase di progettazione. Per casi semplici, la proprietà FallbackValue
funziona molto bene (caselle di testo e blocchi di testo, ecc.). Ma soprattutto quando si ha a che fare con ItemsControl
e simili, è davvero necessario che i dati di esempio siano visibili nella finestra di progettazione in modo che sia possibile regolare e modificare controlli e modelli di dati senza dover eseguire l'eseguibile.Quali approcci sono disponibili per i dati fittizi in fase di progettazione in WPF?
So che ObjectDataProvider
consente l'associazione a un tipo e quindi è in grado di fornire dati di progettazione per la visualizzazione, ma poi c'è qualche giocoleria per consentire ai dati di runtime reali di legare senza sprecare risorse caricando il caricamento sia il tempo di progettazione, i dati dummied e le associazioni di runtime.
In realtà quello che voglio è la possibilità di avere, ad esempio, "John", "Paul", "George" e "Ringo" vengono visualizzati nel designer XAML come elementi stylable nel mio ItemsControl
, ma hanno dati reali mostra quando l'applicazione è in esecuzione.
So anche che Blend consente alcuni attributi di fantasia che definiscono i dati di associazione del tempo di progettazione che vengono effettivamente ignorati da WPF in condizioni di runtime.
Quindi le mie domande sono:
1. Come potrei sfruttare attacchi in fase di progettazione delle collezioni e dei dati non banali nel Designer Studio XAML visivo e poi scambiare a runtime attacchi senza problemi?
2. In che modo altri hanno risolto questo problema dei dati di runtime rispetto al tempo di progettazione? Nel mio caso, non posso usare molto facilmente gli stessi dati per entrambi (come si sarebbe in grado, ad esempio, con una query di database).
3. Le loro alternative all'espressione si fondono che potrei utilizzare per il progetto XAML integrato nei dati? (So che ci sono alcune alternative, ma voglio specificamente qualcosa che posso usare per vedere i dati di esempio legati, ecc?)
Sì. Penso che questo sia il nuovo e chiaro vincitore. L'altra roba era workaround, questa è più "ufficialmente supportata" – el2iot2
Se hai problemi con l'uso di 'd: DataContext' potresti trovare qualche aiuto in questa domanda: http://stackoverflow.com/questions/8303803/setting-design- time-datacontext-on-a-finestra-is-giving-a-compiler-error –
Questo esempio non ha causato il caricamento di un'istanza di MockXViewModel nelle risorse per una release build? Non è una preoccupazione? – jpierson