Informazioni
L'argomento richiesto è visualizzato di seguito, ma non è incluso in questa libreria.

Migliorare il tempo necessario per l'avvio per le app con controlli GridView e ListView (XAML)

Applies to Windows and Windows Phone

Per creare ogni elemento in un controllo GridView o ListView, Windows Runtime usa il tempo e la memoria di elaborazione. Ogni elemento può essere costituito da più elementi che ne mostrano lo stato, inclusi quelli che indicano, ad esempio, la selezione, il passaggio del puntatore e lo stato attivo di un elemento. In Windows 8, tutti questi elementi vengono creati in anticipo, anche se ne vengono usati solo alcuni. Ciò determina un tempo di avvio più lungo. In Windows 8.1, il tempo di avvio è stato ridotto con l'introduzione delle classi GridViewItemPresenter e ListViewItemPresenter e del metodo GoToElementStateCore.

GridViewItemPresenter e ListViewItemPresenter

La classe GridViewItemPresenter (per il controllo GridView) e la classe ListViewItemPresenter (per il controllo ListView) creano gli oggetti solo se sono necessari e le prestazioni degli oggetti in Windows 8.1 sono migliori che in Windows 8. Con queste classi è anche molto più facile personalizzare il comportamento dello stato degli elementi in Windows 8.1 che in Windows 8.

Per dimostrarlo, ecco un markup XAML (Extensible Application Markup Language) per Windows 8.1, che rimuove il segno di spunta che appare per impostazione predefinita quando un elemento viene selezionato e cambia il colore di sfondo dell'articolo selezionato in arancione.


<!-- ... -->
<GridView>
    <!-- ... -->
    <GridView.ItemContainerStyle>
        <Style TargetType="GridViewItem">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="GridViewItem">
                        <GridViewItemPresenter
                            SelectionCheckMarkVisualEnabled="False"
                            SelectedBackground="Orange"/>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </GridView.ItemContainerStyle>
</GridView>
<!-- ... -->


Per trovare le due righe corrette di markup XAML da usare, SelectionCheckMarkVisualEnabled="False" e SelectedBackground="Orange", è necessario scegliere in un elenco di circa 25 proprietà disponibili con nomi autodescrittivi.

In confronto, per fare più o meno la stessa cosa in Windows 8, è necessario analizzare più di 250 righe di markup XAML generato che è meno descrittivo e modificare il markup di destinazione sul momento oppure copiarlo nel proprio codice markup XAML dove poi modificarlo. Entrambi gli approcci richiedono molto più tempo ed sono più soggetti a errori.

GoToElementStateCore

Se vuoi creare un modello di elemento personalizzato, ad esempio se vuoi cambiare il comportamento visivo predefinito di un elemento in un controllo GridView o ListView, come sostituire il segno di spunta di un elemento selezionato con una forma diversa, puoi usare il metodo GoToElementStateCore. Questo metodo può essere usato per aggiungere voci a una gerarchia di elementi visivi che descrivono lo stato di una voce, ad esempio per i comportamenti di selezione, passaggio del puntatore e stato attivo. Il metodo GoToElementStateCore consente la costruzione per stato di questi tipi di elementi visivi, invece di dover caricare codice XAML per tutti gli stati all'avvio di un controllo. L'uso di questo metodo permette un miglior avvio del controllo rispetto alla creazione di un'implementazione personalizzata.

Per altro codice che mostra come usare il metodo GoToElementStateCore, vedi l'esempio di aspetti fondamentali di XAML  ListView e GridView.

Argomenti correlati

Caricare, memorizzare e visualizzare con più efficienza grandi set di dati
Aggiornare gli elementi GridView e ListView con incrementi
Ridurre al minimo il tempo di avvio

 

 

Mostra:
© 2014 Microsoft