cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 2008
-
28 juin 2004 à 17:23
Emitai
Messages postés1Date d'inscriptionmercredi 8 juin 2005StatutMembreDernière intervention 8 juin 2005
-
8 juin 2005 à 06:00
Bonjour a tous,
Je debute en asp.net et j'aurais aime savoir s'il etait possible de faire un peu comme en javascript => un alert("Message")
J'ai trouve un exemple sur un site en anglais mais j'ai teste ca ne marche pas ...
il me dit
BC30451: Name 'MessageBox' is not declared.
code pour le vb.net
sub Page_Load( object sender, System.EventArgs e )
MessageBox.Show( "Hello World!" )
end sub
avec la classe
<%@ import Namespace="System.Windows.Forms" %>
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 28 juin 2004 à 20:15
je sais pas ou t'as trouvé ce code mais c'est n'importe koi
ca me rappelle un passage du bouquin ASP.net de chez microsoft, il dit en gros qu'il y a une grosse difference entre les webforms et les winforms, ce qui se fait simplement sur les winforms peuvent etre irrealisable sur les webform, et inversement.
dans ton cas, c'est un peu plus chiant, puis qu'il faut que tu ailles écrire du javascript, et recharger la page à cq fois que tu veux une fenetre ...
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 29 juin 2004 à 14:19
tu dis l'avoir trouvé sur http://www.codeproject.com, ce qui m'etonne car generalement il y a de tres bon articles, je regarderais l'aticle la bas, et comprendrais ce qu'il voulait dire.
il faut pour ton pb, ecrire du code javascript, c'est pas tres compliqué mais j'ai pas le temps pour l'instant
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 29 juin 2004 à 15:42
j'ai vu le code sur codeproject, j'ai encore pas lu l'article, mais il ne font pas un imports system.windows.form, ils disent que ce code fait comme les winforms
il te reste donc pas grand chose à faire, je posterais bien une source pour te traduire ce bout de code en vb, mais je me suis coupé le doigt ce matin, du coup je peux plus travailler (au revoir les sous pour le portable :'() et 5 points, donc peut presque plus ecrire :'(
@+
si tu comprends, dis moi, j'essaierais de t'expliquer, mais c'est tres simle :)
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 29 juin 2004 à 19:28
pour le bouquin, il est pas mal mais il est concu pour passer de asp à asp.net donc il compare pdt 1 chap, et les 2 premiers chap sont inutile si on connait la techno .net sinon le reste du bouquin est pas mal assez poussé dans certains cas pour les debutants sinon le reste est bien : --> http://www.aspfr.com/livres.aspx?EAN=9782100064724 pour les debutants qui veulent faire des jolis trucs c'est parfait
je le prefere à l'autre, il est un peu moins poussé, j'ai appris avec celui la, et j'en suis tres content, et je me sers souvent de ce bouquin pour des trucs cons etc..., vu le prix (10?) je te le recommande
sinon, je te recommande aussi Au coeur de Visual Basic.NET tj de Richard, il est excellent, par contre je trouve que le niveau est deja assez elevé, surtout lorsqu'il parle du langage MSIL et du garbage collector, mais à part ces deux chapitres, les débutants peuvent suivrent, mais faut un peu s'accrocher à des moments. par contre il sert un peu moins en asp.net, en tout cas on en voit pas tout de suite l'utilité en asp.net, mais le bouquin est surtout centré sur le langage meme, et aussi bcp sur la techno .net, mais sert principalement pour les winforms. reste qu'il m'a bcp servis pour mes dev asp.net
pour ton bouquin : http://www.aspfr.com/livres.aspx?EAN=9782212112108 j'ai hésité à le prendre, mais j'ai prefere prendre le gros bouquin de richard car j'en avais deja pas mal sur asp.net, puis la semaine d'apres je suis allé aux devdays, et j'ai eu l'autre bouquin d'asp.net :-p
Pour ce qui est de ton pb de messagebox, j'espere que tu y es arrivé, moi j'ai de + en + de mal à taper :p, je viens de changer le pansement, et je me suis dit que je me suis pas loupé.
j'espere que demain ca ira un peu mieux et que je pourrais taper un peu de code pour traduire cette source en vb et en francais :)
pour le portable j'espere qu'un jour je l'aurais, j'espere vraiment que je l'aurais :p
apres pres de 10 min de tapage avec la main gauche, j'aurais qd meme à peu pres reussi a te repondre
@+
PS: pour les sources du bouquin, oui je suis interessé, vient me voir en pv, je te passerais mon mail :)
Public Class MessageBox
Private m_executingPages As Hashtable = New Hashtable
Public Sub Show(ByVal sMessage As String)
'// If this is the first time a page has called this method then
If Not m_executingPages.Contains(HttpContext.Current.Handler) Then
' // Attempt to cast HttpHandler as a Page.
Dim executingPage As Page = HttpContext.Current.Handler
If Not executingPage Is Nothing Then
'// Create a Queue to hold one or more messages.
Dim messageQueue As Queue = New Queue
'// Add our message to the Queue
messageQueue.Enqueue(sMessage)
'// Add our message queue to the hash table. Use our page reference
'// (IHttpHandler) as the key.
m_executingPages.Add(HttpContext.Current.Handler, messageQueue)
'// Wire up Unload event so that we can inject
'// some JavaScript for the alerts.
'executingPage.Unload += new EventHandler( ExecutingPage_Unload );
AddHandler executingPage.Unload, AddressOf ExecutingPage_Unload
End If
Else
'// If were here then the method has allready been
'// called from the executing Page.
'// We have allready created a message queue and stored a
'// reference to it in our hastable.
Dim Queue As Queue = CType(m_executingPages(HttpContext.Current.Handler), Queue)
'// Add our message to the Queue
Queue.Enqueue(sMessage)
End If
End Sub
'// Our page has finished rendering so lets output the
'// JavaScript to produce the alert's
Private Sub ExecutingPage_Unload(ByVal sender As Object, ByVal e As System.EventArgs)
'// Get our message queue from the hashtable
Dim Queue As Queue = CType(m_executingPages(HttpContext.Current.Handler), Queue)
If Not Queue Is Nothing Then
Dim sb As New System.Text.StringBuilder
'// How many messages have been registered?
Dim iMsgCount As Integer = Queue.Count
'// Use StringBuilder to build up our client slide JavaScript.
sb.Append("<script language='javascript'>")
'// Loop round registered messages
Dim sMsg As String
Do While iMsgCount > 0
sMsg = Queue.Dequeue().ToString
sMsg = sMsg.Replace("\n", "\\n")
sMsg = sMsg.Replace("""", "'")
sb.Append("alert( """ + sMsg + """ );")
iMsgCount -= 1
Loop
'// Close our JS
sb.Append("</script>".ToString)
'// Were done, so remove our page reference from the hashtable
m_executingPages.Remove(HttpContext.Current.Handler)
'// Write the JavaScript to the end of the response stream.
HttpContext.Current.Response.Write(sb.ToString())
End If
End Sub
Il y a des trucs dans le code que j'ai pas compris, l'histoire de Queue etc... je vois pas à quoi ca sert. mais le principal c'est que ca marche :)
Je pense poster ca en tant que source sur ce site, mais une fois que j'aurais bien compris le principe
Tu as juste a mettre ce code dans une de te pages, et ensuite tu as juste à faire
Dim mb As New MessageBox
mb.Show("Coucou !!!")
la ou tu le souhaites
Je te deconseil qd meme d'utiliser cette methode, je trouve pas ca tres joli, car la fenetre s'affiche tout de suite apres le chargement de la page ...