cs_Augustus
Messages postés13Date d'inscriptionmercredi 11 octobre 2006StatutMembreDernière intervention 8 décembre 2008
-
25 sept. 2008 à 16:49
cs_Augustus
Messages postés13Date d'inscriptionmercredi 11 octobre 2006StatutMembreDernière intervention 8 décembre 2008
-
29 sept. 2008 à 08:52
Bonjour,
Je suis débutant en asp.net.
J'aimerai faire appel à une fonction vb.net à partir d'un évènement onmouseover sur une image ( nommé : Image1) . J'aimerai savoir si il est possible de le faire sans passer par du javascript.(uniquement en vb.net)
J'ai éssayer de nombreuses choses du genre :
Partial
Class _Default
Inherits System.Web.UI.Page
Protected
Sub Page_Load(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles
Me.LoadImage1.Attributes.Add(
"OnMouseOver",
"Toto")
End
Sub
Private
Sub toto()
End
SubEnd
Class
Ou encore :
Partial
Class _Default
Inherits System.Web.UI.Page
Protected
Sub Page_Load(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles
Me.LoadImage1.Attributes.Add(
"OnMouseOver",
"Toto()")
End
Sub
Private
Sub toto()
End
SubEnd
Class
Rien ne fonctionne. J'ai besoin de votre aide. Merci d'avance
ggtry
Messages postés417Date d'inscriptionvendredi 13 juin 2008StatutMembreDernière intervention21 juillet 20101 25 sept. 2008 à 17:55
Bonjour,
L'ajout d'attributs avec attributes.add ajoute de l'html.
Ce que ton onmouseover="toto()" va appeler doit donc être une fonction javascript.
Tu n'as pas la possibilité (du moins directement) d'appeler du vb.net avec un onmouseover, puisque onmouseover est un événement côté "client", tandis que ton code vb.net sera exécuté côté serveur et nécessite donc un postback.
Que cherches-tu à faire au juste ?
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 25 sept. 2008 à 19:56
Salut,
Dans ton cas c'est de l'ajax qu'il faut faire.
De plus sur le onmouseover (tu risque d'avoir des problemes il me semble de l'evenement est envoyé une multitude de fois) pour suivre la souris.
cs_Augustus
Messages postés13Date d'inscriptionmercredi 11 octobre 2006StatutMembreDernière intervention 8 décembre 2008 26 sept. 2008 à 09:11
Salut ggtry et nhervagault,
Merci pour vos réponses.
Je fais actuellement des essais en asp pour m'y mettre car je viens du monde winform en vb.net.
J'essai de controler le coté client sans passer forcément par des postback.
Et si on peux le faire, j'aimerai savoir comment faire pour ne pas passer par une multitude de language pour codé le coté client( HTML + ASP + JAVASCRIPT + VB.NET : tout ca dans un meme code !!! je trouve que ca ne fais pas très structuré)
Mon bref essai en haut était juste pour voir si on pouvait le faire directement en vb.net sans passer par d'autres languages.
J'ai besoin de vos lumières.
ggtry
Messages postés417Date d'inscriptionvendredi 13 juin 2008StatutMembreDernière intervention21 juillet 20101 26 sept. 2008 à 10:36
Bonjour,
Lorsque tu fais une page asp, celle-ci, pour être lue par un navigateur, est traduite en html et en javascript. Autrement dit, ton code asp ou vb n'apparaît pas dans la page transmise au client : pour voir ce que cela donne, tu peux créer une page asp simple et regarder la source dans le navigateur.
Le "mélange" html, asp, vb (ou c#) est inévitable. En schématisant un peu, l'html et le javascript que tu écris toi-même constituent la partie statique, conservée telle quelle côté client, la partie asp et vb celle qui est interprétée côté serveur pour produire dynamiquement de l'html et du javascript.
Lorsque la page est lue dans le navigateur, le seul moyen d'intervenir sur des éléments sans provoquer de postback est d'utiliser un langage de script client comme le javascript (qui est utilisé parce que reconnu par tous les navigateurs). Mais c'est évidemment assez limité.
Tout faire en vb ?
La structure de base d'une page asp est celle d'une page html : avec un head et un body. Pour présenter les divers éléments de ta page, tu es bien obligé de le faire à l'aide de l'html.
Ensuite, même si tu voulais créer tous tes contrôles asp en pur dynamique dans ton code vb (ce qui n'est vraiment pas à recommander), tu serais bien obligé de poser tout de même des contrôles asp dans ta page, par exemple literal pour écrire de l'html ou placeholder pour réserver un emplacement dans la page pour un contrôle asp... et pour qu'il y ait des interactions uniquement côté client, tu seras bien obligé d'écrire du javascript.
Ce que tu cherches à faire n'est donc pas possible : et si même tu cherchais à faire le plus possible en vb pour des raisons esthétiques, disons, cela te compliquerait énormément la vie.
Tu ne peux pas non plus éviter le postback sans rendre la partie asp inutile : mais comme le remarque nhervagault, tu peux t'intéresser à l'ajax pour ne rafraîchir que certaines parties.
Si tu cherches un partage plus clair des choses, rien ne t'empêche de mettre ton vb dans un fichier de code-behind.
Le mieux, pour commencer, est de bien faire la part entre la partie "client" et la partie "serveur".
GGtry
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Augustus
Messages postés13Date d'inscriptionmercredi 11 octobre 2006StatutMembreDernière intervention 8 décembre 2008 26 sept. 2008 à 10:46
Merci pour tes informations.
Je vais essayer de me mettre au javascript.
Autrement, j'ai entendu parlé du silverlight. Il me semble qu'il permet de gérer le coté client. As tu des infos à ce sujet ?
ggtry
Messages postés417Date d'inscriptionvendredi 13 juin 2008StatutMembreDernière intervention21 juillet 20101 26 sept. 2008 à 22:40
Salut,
Pour le silverlight, je passe mon tour : je n'y connais strictement rien.
Pour le javascript : c'est un langage très simple. Le seul ennui vient du fait que tous les navigateurs ne reconnaissent pas nécessairement les mêmes choses et qu'il faut parfois varier le code selon que l'on est sous IE ou sous Netscape, notamment.
Mais cela dit, ça dépend surtout de ce que tu veux faire car, dans le cas général, tu n'as pas nécessairement besoin d'écrire du javascript.
Il faut voir surtout ce que tu veux faire avec de l'asp pur : son grand avantage reste la gestion facilitée des données issues des bases de données.
Si tu veux faire des applications graphiques ou des trucs comme cela, il vaut mieux en effet t'intéresser à des solutions plus spécifiques.
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 27 sept. 2008 à 19:57
Pour Silverligth,
C'est un plugin comme flash qui est executé dans le navigateur.
Il interprete du code donet pour la version 2(sous ensemble de dotnet en 4mo) et permet de communiquer avec un server par l'intermédiaire de WCF, RSS, REST...
Il y a une communication silverligth<-->javascript
Donc avec silverligth tu peux appeler du code dotnet du server mais par l'intermédiaire de web service.
Pour l'interface graphique elle est écrite en un WPF ligth, ce qui permet de faire des animations et applications assez surprenantes.