Je développe un éditeur d'image en utilisant activeX C# .net 2.0listview se comporte différents lorsqu'il est utilisé en composant activex
J'utilise le contrôle ListView pour afficher des images miniatures. Normalement, si vous utilisez la touche Maj pour sélectionner plusieurs éléments, elle sélectionne toute la plage entre l'élément sélectionné et l'élément sur lequel vous avez cliqué. Mais lorsqu'il est utilisé en tant qu'activeX, il sélectionne les éléments dans un canevas rectangulaire entre les éléments sélectionnés et ceux qui ont été cliqués.
Je ne peux pas ajouter l'image donc je vais illustrer comme ça :)
deuxième point est sélectionné et cliquez sur i Maj 7.
c'est ce que je dois:
x xxx
xxx x
c'est ce qui se passe:
x xx x
x xx x
gras x: sélectionnée.
Le composant est utilisé dans l'application .net. également dans les applications Web en tant qu'objet ActiveX. Je veux que la liste de visualisation se comporte de la même manière à chaque endroit. Des idées?
PS: .net version 2.0
Je pense qu'il veut qu'ils se comportent de la même manière, mais ils ne le sont pas (si je comprends bien). Mais je suis entièrement d'accord, ils chargent deux versions différentes de ce contrôle. Est-il possible qu'il fasse référence à l'héritage comctl32 directement dans le projet? Enumérant System.Diagnostics.Process.GetCurrentProcess(). Les modules du débogueur lui diraient quelle version de comctl32 il charge. –
+1 Merci beaucoup! C'est un bon point de vue. Je vais essayer d'utiliser un manifeste ou utiliser CreateActCtx() et donner des commentaires. – honibis