Domanda

Nella nostra applicazione, consentiamo agli amministratori di un'installazione di progettare modelli per etichette nome che vengono stampate quando effettuano il check-in da un chiosco (una specie di check-in per un volo in un chiosco e stampa di una carta d'imbarco).

Ad esempio, il modello potrebbe assomigliare a questo:

[FirstName] [LastName]
[Company]
[PersonImage]
[BarCode]

Al momento, utilizziamo Reporting Services per consentire ai nostri amministratori di progettare modelli per etichette nome (alcuni potrebbero desiderare un'immagine della persona, un codice a barre stampato, il nome della loro organizzazione, ecc.). Funziona bene, ma 1) Reporting Services è lento per il rendering e 2) non è integrato molto bene con la nostra applicazione - devono caricare Visual Studio e progettare il nome tag al di fuori della nostra applicazione.

XAML sembra adatto per la progettazione del modello per etichette nome. Praticamente qualsiasi progetto potrebbe essere gestito con il formato e potremmo usare XAML su XPS per stampare.

Il problema che vedo è come integrare un visual designer che utilizza un sottoinsieme di controlli XAML disponibili. Avremmo davvero bisogno solo di semplici controlli come Canvas, Grid, TextBlock, Image, ecc. Con supporto drag / drop. Non trovo molte informazioni sulla possibilità di ospitare Visual Studio o il designer XAML di Sparkle in un'applicazione separata. Qualcuno ha qualche idea? Il RichTextBox sembra quasi funzionare, ma un FlowDocument non è proprio quello che vogliamo. Dobbiamo essere in grado di trascinare gli elementi in giro e posizionarli assolutamente (come in un progettista di report).

È stato utile?

Soluzione

Non sono sicuro di poter ospitare i designer di MS (anche se ne dubito), ma penso che potresti essere in grado di produrre il tuo mini-editor in modo abbastanza semplice. Inizia con un Canvas e aggiungi a livello di codice Label , TextBlock o qualsiasi altra cosa tu voglia (collegali con Fai clic su gestori per spostarli tramite Canvas.Top / Canvas.Left ). Puoi eseguire il rendering del Canvas su un'immagine abbastanza facilmente per la stampa, o Xaml-Xps come hai menzionato.

Guarda Kaxaml come esempio di qualcuno che ha già installato un mini editor Xaml (è stato recentemente aggiornato a SL2). Potrebbero essercene anche altri là fuori.

EDIT 26-Jan-09: controlla anche XamlCruncher ( esempio ) - sicuramente batte il caricamento di Visual Studio - sembra che XamlReader.Load valga la pena provare?

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