Puis-je afficher des liens dans une liste de détails de la mode?
Je suis l'affichage d'un ensemble de résultats de recherche dans un ListView
. La première colonne contient le terme de recherche, et la seconde indique le nombre de matchs.
Il y a des dizaines de milliers de lignes, de sorte que le ListView
est en mode virtuel.
J'aimerais changer cela afin que la deuxième colonne montre les matchs en tant que liens hypertexte, de la même manière qu'un LinkLabel
montre les liens; lorsque l'utilisateur clique sur le lien, j'aimerais recevoir un événement qui me permettra d'ouvrir le match d'ailleurs dans notre application.
Est-ce possible, et si oui, comment?
EDIT: je ne pense pas que j'ai été suffisamment claire, je veux plusieurs liens hypertexte dans une seule colonne, tout comme il est possible d'avoir plusieurs des liens hypertexte en un seul LinkLabel
.
OriginalL'auteur Simon | 2010-02-18
Vous devez vous connecter pour publier un commentaire.
Vous pouvez facilement de faux. S'assurer que la liste afficher les éléments que vous ajoutez ont UseItemStyleForSubItems = faux de sorte que vous pouvez définir le sous-élément ForeColor de bleu. Mettre en œuvre l'événement MouseMove de sorte que vous pouvez souligner la "lien" et de changer le curseur de la. Par exemple:
Noter que ce morceau de code vérifie si la 2ème colonne est planait, ajuster si nécessaire.
OriginalL'auteur Hans Passant
Utilisation ObjectListView -- open source wrapper autour d'une norme ListView. Il prend en charge les liens directement:
Cette recette documents de la (très simple) de processus et la façon dont vous pouvez le personnaliser.
OriginalL'auteur Grammarian
Autres réponses ici sont grands, mais si vous ne voulez pas avoir à pirater code de concert, regarder les
DataGridView
de contrôle qui a un support pourLinkLabel
équivalent colonnes.L'utilisation de cette commande, vous obtenez toutes les fonctionnalités de l'affichage des détails dans un
ListView
, mais avec plus de personnalisation par ligne.OriginalL'auteur Codesleuth
Vous pouvez en héritant de la ListView de contrôle de remplacer la méthode OnDrawSubItem.
Voici un exemple TRÈS simple de la façon dont vous pourriez faire:
OriginalL'auteur Patrik Svensson
Vous pouvez définir HotTracking true pour que lorsque l'utilisateur place le pointeur de la souris sur l'élément, il apparaît en tant que lien.
OriginalL'auteur Giorgi