Domanda

Ho una singola applicazione Silverlight che mi piacerebbe per visualizzare in una griglia. Il modo in cui l'applicazione Silverlight visualizza il suo contenuto dipende l'ID univoco del record in ogni riga della griglia. Purtroppo, il file XAP viene nuovamente scaricato per ogni riga della griglia. Con una dimensione di 700KB, davvero influisce sulle prestazioni. E 'possibile scaricare il file XAP una volta e poi basta ri-utilizzarlo per ogni riga della griglia?

È stato utile?

Soluzione

Una volta che un XAP è stato scaricato Silverlight memorizza nella cache le assemblee ecc localmente per ogni istanza di un controllo Silverlight. Se si crea un altro esempio di un controllo Silverlight allora questo a sua volta ha il proprio dominio che a sua volta si occupa.

Il mio suggerimento è quello di astrarre le parti si requrie e cuocere in una XAML separato, poi caricarli in aree dove è necessario il massimo. Se ancora bisogno di un Xap centrale per gestire il marshalling / evento ecc gestione poi in Silverlight 3 abbiamo messo in atto un'API connessione alla rete locale che consente ad altri casi di Silverlight di parlare l'un l'altro all'interno della pagina uno del browser a livello locale (ad esempio SilverlighA può parlare con SilverlightB tutti entro index.html)

Questo può quindi consentire di stabilire una sorta di proxy locale se si vuole.

Gestione Scott Barnes / piattaforme ricche del prodotto / Microsoft.

Altri suggerimenti

Non sono sicuro che si può. Teoricamente dovrebbe essere memorizzata nella cache, ma in questo caso la teoria non sembrano vale la pena squat.

E 'tutta una questione di modo in cui il tag si comporta con i suoi vari params e questo è (un altro), una delle aree "scarsamente" documentati di Silverlight.

E 'possibile, ma non facile da fare. È possibile scaricare il XAP e salvarlo in IsolatedStorage e creare un host silverlight ogni volta che avete bisogno di uno referenziare la tua XAP nella cache, ma hai solo lo spazio di 1 MB a disposizione e non si è garantito che se si dispone di altre applicazioni Silverlight dallo stesso dominio.

Dato quello che hai descritto io ancora non vedo alcun valore nel fare ciò che si vuole fare. Penso che tu abbia all'indietro.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top