Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

gestion d'évenement drag and drop sur controle WebBrowser

5 réponses
Avatar
La_fille_qui_pleure_du_sang
Bonjour,

J'aurais besoin de capturer des évenement de type drag and drop sur un
controle System.Windows.Forms.WebBrowser.

J'aurrais besoins du même tupe d'évenement que l'on trouve sur un
System.Windows.Forms.ListView, à savoir des évenements du type "DragDrop",
"DragEnter", "DragLeave"...

En fait, j'ai besoin de ça car je fait un interface ou l'utilisateur peut
déposer les fichiers qui l'interresse dans le controle, afin de générer une
archive par la suite...

Mon controle WebBrowser pointe donc vers un répertoire temporaire, et le
problème, c'est que dans le cas ou l'utilisateur drop un fichier qui est sur
le même disque que le répertoire temporaire, plutot que de le copier, il y
sera déplacer, ce qui ne me convien pas du tout...

d'une manière plus générale, je cherche à réaliser une sorte d'interface qui
ressemblerais à celle que l'on a sous Nero 7 pour placer les fichiers et les
répertoires avant de graver le CD

Bien sur, j'ai un bouton pour choisir les fichier et les répertoire, qui
marche tres bien en copiant mes fichiers plutot qu'en les déplaçant, mais
comme j'aimerais aussi que l'utilisateur puisse glisser et déposer dans la
fenêtre... là je coince.

Merci d'avance pour votre aide

5 réponses

Avatar
Patrice
Comme le but est d'afficher une page web, ces évènements seront gérés via
les éléments présents dans la page web. Dans ce cas, il me semble q'un
ListView serait aussi commode (pourquoi afficher une page web pour les
fichiers sélectionnés ?)

--
Patrice
Avatar
La_fille_qui_pleure_du_sang
En fait, l'avantage avec un WebBrowser, c'est je n'ai rien à gérer au niveau
code pour l'ajout des fichier et autre.

Je met un repertoire comme url, et hop, tout les fichier s'affichent, comme
dans l'explorateur windows, avec les diférentes possibilité de trie, les
menu contextuels qui vont bien, la gestion automatique des dragNdrop, les
icones qui vont bien pour les fichier, etc, etc.

Par contre, avec un ListView, je suis obligé de tout faire moi même, sans
arriver au même niveau qu'avec un WebBrowser, je ça fait la journée que je
suis dessus avec cette solution,
(http://msdn.microsoft.com/fr-fr/library/ms171645.aspx) et franchement, je
ne suis pas rendu !

C'est pour ça que si je pouvait capturer l'evenement de DragDrop, puis
forcer la copie, ça me ferait gagner un temps fou !

Merci d'avance pour votre aide

"Patrice" <http://scribe-fr.blogspot.com/> a écrit dans le message de
news:%
Comme le but est d'afficher une page web, ces évènements seront gérés via
les éléments présents dans la page web. Dans ce cas, il me semble q'un
ListView serait aussi commode (pourquoi afficher une page web pour les
fichiers sélectionnés ?)

--
Patrice




Avatar
Patrice
Ok c'est plus clair. A priori c'est Explorer (ou plus généralement ce qui
est affiché par le webbrowser) qui gère ces évènements. Cela reviendrait
donc à trouver un moyen de modifier le comportement d'une vue "dossier" ce
qui ne doit pas être simple si même c'est possible.

Je crois me souvenir avoir vu qq qui mettait un panel transparent au dessous
d'une portion de son écran ce qui lui permettait de récupérer les messages.
Selon le cas il passait ensuite le message à l'élément sous-jacent ou le
traitait lui même (après si j'ai vu cela dans un groupe c'est peut-être
qu'il avait un problème ?) Peut-être une voie à explorer en attendant
mieux...

--
Patrice

"La_fille_qui_pleure_du_sang"
a écrit dans le message de
news:
En fait, l'avantage avec un WebBrowser, c'est je n'ai rien à gérer au
niveau code pour l'ajout des fichier et autre.

Je met un repertoire comme url, et hop, tout les fichier s'affichent,
comme dans l'explorateur windows, avec les diférentes possibilité de trie,
les menu contextuels qui vont bien, la gestion automatique des dragNdrop,
les icones qui vont bien pour les fichier, etc, etc.

Par contre, avec un ListView, je suis obligé de tout faire moi même, sans
arriver au même niveau qu'avec un WebBrowser, je ça fait la journée que je
suis dessus avec cette solution,
(http://msdn.microsoft.com/fr-fr/library/ms171645.aspx) et franchement, je
ne suis pas rendu !

C'est pour ça que si je pouvait capturer l'evenement de DragDrop, puis
forcer la copie, ça me ferait gagner un temps fou !

Merci d'avance pour votre aide

"Patrice" <http://scribe-fr.blogspot.com/> a écrit dans le message de
news:%
Comme le but est d'afficher une page web, ces évènements seront gérés via
les éléments présents dans la page web. Dans ce cas, il me semble q'un
ListView serait aussi commode (pourquoi afficher une page web pour les
fichiers sélectionnés ?)

--
Patrice







Avatar
La_fille_qui_pleure_du_sang
Personne n'a d'idées ?

"Patrice" <http://scribe-fr.blogspot.com/> a écrit dans le message de
news:
Ok c'est plus clair. A priori c'est Explorer (ou plus généralement ce qui
est affiché par le webbrowser) qui gère ces évènements. Cela reviendrait
donc à trouver un moyen de modifier le comportement d'une vue "dossier" ce
qui ne doit pas être simple si même c'est possible.

Je crois me souvenir avoir vu qq qui mettait un panel transparent au
dessous d'une portion de son écran ce qui lui permettait de récupérer les
messages. Selon le cas il passait ensuite le message à l'élément
sous-jacent ou le traitait lui même (après si j'ai vu cela dans un groupe
c'est peut-être qu'il avait un problème ?) Peut-être une voie à explorer
en attendant mieux...

--
Patrice

"La_fille_qui_pleure_du_sang"
a écrit dans le message de
news:
En fait, l'avantage avec un WebBrowser, c'est je n'ai rien à gérer au
niveau code pour l'ajout des fichier et autre.

Je met un repertoire comme url, et hop, tout les fichier s'affichent,
comme dans l'explorateur windows, avec les diférentes possibilité de
trie, les menu contextuels qui vont bien, la gestion automatique des
dragNdrop, les icones qui vont bien pour les fichier, etc, etc.

Par contre, avec un ListView, je suis obligé de tout faire moi même, sans
arriver au même niveau qu'avec un WebBrowser, je ça fait la journée que
je suis dessus avec cette solution,
(http://msdn.microsoft.com/fr-fr/library/ms171645.aspx) et franchement,
je ne suis pas rendu !

C'est pour ça que si je pouvait capturer l'evenement de DragDrop, puis
forcer la copie, ça me ferait gagner un temps fou !

Merci d'avance pour votre aide

"Patrice" <http://scribe-fr.blogspot.com/> a écrit dans le message de
news:%
Comme le but est d'afficher une page web, ces évènements seront gérés
via les éléments présents dans la page web. Dans ce cas, il me semble
q'un ListView serait aussi commode (pourquoi afficher une page web pour
les fichiers sélectionnés ?)

--
Patrice











Avatar
Patrice
Tu as essayé le coup du Panel transparent ?

--
Patrice

"La_fille_qui_pleure_du_sang"
a écrit dans le message de groupe de discussion :

Personne n'a d'idées ?

"Patrice" <http://scribe-fr.blogspot.com/> a écrit dans le message de
news:
Ok c'est plus clair. A priori c'est Explorer (ou plus généralement ce
qui est affiché par le webbrowser) qui gère ces évènements. Cela
reviendrait donc à trouver un moyen de modifier le comportement d'une vue
"dossier" ce qui ne doit pas être simple si même c'est possible.

Je crois me souvenir avoir vu qq qui mettait un panel transparent au
dessous d'une portion de son écran ce qui lui permettait de récupérer les
messages. Selon le cas il passait ensuite le message à l'élément
sous-jacent ou le traitait lui même (après si j'ai vu cela dans un groupe
c'est peut-être qu'il avait un problème ?) Peut-être une voie à explorer
en attendant mieux...

--
Patrice

"La_fille_qui_pleure_du_sang"
a écrit dans le message de
news:
En fait, l'avantage avec un WebBrowser, c'est je n'ai rien à gérer au
niveau code pour l'ajout des fichier et autre.

Je met un repertoire comme url, et hop, tout les fichier s'affichent,
comme dans l'explorateur windows, avec les diférentes possibilité de
trie, les menu contextuels qui vont bien, la gestion automatique des
dragNdrop, les icones qui vont bien pour les fichier, etc, etc.

Par contre, avec un ListView, je suis obligé de tout faire moi même,
sans arriver au même niveau qu'avec un WebBrowser, je ça fait la journée
que je suis dessus avec cette solution,
(http://msdn.microsoft.com/fr-fr/library/ms171645.aspx) et franchement,
je ne suis pas rendu !

C'est pour ça que si je pouvait capturer l'evenement de DragDrop, puis
forcer la copie, ça me ferait gagner un temps fou !

Merci d'avance pour votre aide

"Patrice" <http://scribe-fr.blogspot.com/> a écrit dans le message de
news:%
Comme le but est d'afficher une page web, ces évènements seront gérés
via les éléments présents dans la page web. Dans ce cas, il me semble
q'un ListView serait aussi commode (pourquoi afficher une page web pour
les fichiers sélectionnés ?)

--
Patrice