2013-04-10 3 views
13

Esiste un modo per visualizzare l'anteprima di una GUI in un DataTemplate? per esempio. se ho un dizionario risorse, che contiene un DataTemplate, e il modello di dati contiene il codice della GUI, comeVisualizzazione Progettazione di un DataTemplate in un ResourceDictionary in Visual Studio

<DataTemplate x:Key="MyTemplate"> 
    <StackPanel> 
     <TextBox Text="AAA"/> 
    </StackPanel> 
</DataTemplate> 

Posso visualizzare solo lo StackPanel? (come l'anteprima di un UserControl in vista di progettazione). Se non è possibile con VS originale, c'è un plugin per questo?

+3

Expression Blend può farlo. Ma non sono a conoscenza di nessuno strumento per lo studio visivo che visualizza DataTemplate – Jehof

+1

A meno che non si desideri copiare StackPanel in un UserControl vuoto e utilizzare l'editor della vista di progettazione VS, modificare e copiare nuovamente DataTemplate, è necessario utilizzare Expression Blend come ha detto @Jehof. L'ho fatto io stesso in alcune occasioni in cui non avevo voglia di usare Blend. – Hannish

+0

Questa sarebbe stata una bella funzionalità per Visual Studio 2013, per le persone come me che non amano usare Expression Blend. Un altro modo sarebbe quello di creare un file XAML separato contenente il DataTemplate (non è necessario creare un UserControl) e quindi collegare il file XAML nel ResourceDictionary. –

risposta

14

Visual Studio non supporta questo, ma Expression Blend lo fa, se è possibile accedervi. Ecco alcune istruzioni su diversi modi per modificare le risorse di template:

http://msdn.microsoft.com/en-us/library/cc294908(v=expression.40).aspx

In particolare, se si desidera modificare un DataTemplate situato in una ResourceDictionary si farebbe:

  • Caricare il progetto in Blend
  • Individuare il file XAML che contiene il ResourceDictionary nelle Risorse pannello (inserito a destra per impostazione predefinita)
  • Individuare il DataTem Piastra nella lista delle risorse (con tasto)
  • Clicca Modifica risorsa

so che una vecchia questione, ma spero che questo aiuta!

+0

Questo non funziona per i progetti che si rivolgono a Windows 10 Fall Creators Update, e possibilmente versioni precedenti – binaryfunt

0

Se si fa riferimento al modello nel corpo del controllo, ad esempio ItemTemplate = "{StaticResource MyTemplate}", è possibile posizionare il cursore sul nome del modello e premere F12 per fare in modo che Visual Studio esegua il rendering del modello il progettista XAML. Per qualche ragione, questo funziona solo una volta. Devi chiudere e riaprire il modulo per vedere un altro modello renderizzato. Sicuramente c'è un modo per evitarlo ma non sono stato in grado di capirlo.