2009-11-18 3 views
1

J'essaie de créer une imprimante d'étiquettes assez simple pour compléter les services offerts sur notre site Web (traitement des paiements PayPal en utilisant IPN et sortie d'un fichier CSV contenant des informations de transaction personnalisables). J'ai le plus souvent trié le module de l'imprimante, mais je voulais que les utilisateurs du logiciel puissent ajuster le positionnement des informations, similaire au logiciel P-Touch fourni par Brother.Création d'un «concepteur d'étiquettes» en C#

Le processus consiste à charger dans un fichier CSV, avec divers en-têtes de colonne. Vous devriez alors être en mesure de déplacer les en-têtes de colonne à propos de la disposition - des espaces au milieu de la fenêtre de formulaire, qui, idéalement, seraient alignés sur une grille d'alignement. Ensuite, l'utilisateur peut sélectionner l'aperçu avant impression et imprimer les étiquettes en fonction des différentes tailles d'étiquettes disponibles, où la source de données est le fichier CSV.

Mon problème principal est le "concepteur d'étiquettes", et je n'ai aucune idée par où commencer. J'utilise Visual Express 2010 bêta et C#.

Répondre

1

Fondamentalement, vous devez autoriser l'utilisateur à faire glisser des étiquettes (objets, contrôles, etc.) autour d'un "formulaire".

dragging picturebox inside winform on runtime

Ensuite, vous devez être en mesure de casser une grille tout en faisant glisser (solution de coppercoder):

Snap to grid mouse locking up

Définition d'un "objet" abstrait qui encapsule les "labels" que vous voulez votre utilisateur à "faire glisser le formulaire" (ou panneau, ou quel que soit le contrôle que vous utilisez pour simuler votre papier). Je suppose que je l'ai fait assez pour le trouver assez trivial, bien que si c'est la première fois que vous mettez en œuvre quelque chose comme ça, cela peut être une tâche décourageante. Obtenez de petites portions de fonctionnalité et vous y arriverez. Bien sûr, vous avez toujours stackoverflow pour les questions.

0

Je suggérerais que vous commenciez à regarder WPF plutôt que des winforms car les graphismes dans WPF sont beaucoup plus puissants. Vous aurez probablement besoin d'utiliser l'objet Canvas, car les éléments enfants doivent être explicitement définis, ce qui est le genre de chose dont vous auriez besoin pour un "concepteur d'étiquettes".