2010-06-04 3 views
0

J'ai deux listview, dont l'un accepte les Drag/Drops de fichiers, pour lister les noms de fichiers. Ce que je veux faire est d'avoir le deuxième listview créer un objet personnalisé, basé sur le nom de fichier de l'élément dans la première vue de la liste. J'ai la deuxième liste liste ItemSource lié à la première, et chaque fois que je fais glisser un fichier dans le premier, il apparaîtra dans la seconde. Comme prévu.ListView to ListAfficher la liaison avec le convertisseur sur les articles

Je ne sais pas comment convertir les éléments de la deuxième liste en objet personnalisé. J'ai essayé d'appliquer un convertisseur sur la liaison, mais l'objet dans la fonction Convert est ItemCollection (car c'est ce qui est lié).

Alors est-il possible de les convertir dans les fixations? Ou allez-vous simplement gérer la conversion et tout ce qui se passe dans l'événement drop, en ajoutant une collection séparée à laquelle la deuxième listview est liée? Vous ne pouvez pas simplement définir un ItemTemplate sur la deuxième ListView?

Répondre

0

Duh! Programmation tardive = mauvais programmes

Ce que j'aurais dû faire, et par conséquent avoir fait, est de créer une ObservableCollection de ma classe personnalisée, de lier les deux listes à cette liste, et sur l'événement drop créer ma classe personnalisée à partir du abandonné les données. Comme la méthode ToString() de ma classe renvoyait le nom de fichier, je n'avais pas besoin de me préoccuper d'un ItemTemplate pour la première liste, car cela montrerait le nom de fichier par défaut.

La deuxième liste nécessitait un ItemTemplate pour obtenir la propriété requise, mais je le faisais quand même.

0

Ensuite, vous pouvez afficher à peu près tout ce que vous voulez

Questions connexes