Voilà, il s'agit d'une méthode qui permet d'éviter l'utilisation des frames. (Pour ceux qui, comme moi les ont en horreur ...)
On crée donc une page principale (ici index.aspx) qui servira à contenir les autres pages appelées à partir des liens.
Je crois que le code est assez clair, testez le.
Source / Exemple :
' //// index.aspx.vb
Imports System.Data.SqlClient
Imports System.IO
Imports System.Collections.Specialized
Public Class index
Inherits System.Web.UI.Page
Public HTM As New StringWriter
Public lien As String
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
Dim pos As Long = InStr(1, Request.RawUrl.ToString, "p=")
If (pos > 0) Then
Dim lien_int As String = Right(Request.RawUrl.ToString, (Len(Request.RawUrl.ToString) - pos - 1))
'On verifie l'existence d'un autre paramètre dans le querystring
pos = InStr(1, lien_int, "&")
If (pos > 0) Then
lien_int = Left(lien_int, (pos - 1)) & ".aspx?" & Right(lien_int, (Len(lien_int) - pos))
Else
lien_int = lien_int & ".aspx"
End If
lien = lien_int
Server.Execute(lien, HTM)
Else
Server.Execute("test.aspx", HTM)
End If
Catch ex As Exception
Response.Write(ex.ToString)
End Try
End Sub
end class
' //// index.aspx
<table>
<tr>
<td><img src="uneimage"></td>
</tr>
<tr>
<td>
<table>
<tr>
<td align="left" valign="top">
<a href="index.aspx?p=test>Page de test</a>
'on peut envoyer des paramètres dans le querystring
<a href="index.aspx?p=test2&t=bonjour>Page de test 2</a>
</td>
<td><% response.write (htm.tostring) %></td>
</tr>
</table>
</td>
</tr>
</table>
----------------------------------------------
' //// test.aspx
<table><tr><td>Page test</td></tr></table>
----------------------------------------------
' //// test2.aspx
<table>
<tr>
<td>
Page test2
<% response.write(request.querystring("t") %>
</td>
</tr>
</table>
Conclusion :
On a donc la possibilté d'envoyer des paramètres en Querystring aux pages appelées, mais pour ça, il faut que ceux ci soient placé après le paramètre "p" et non avant sinon ceux ci sont envoyés à la page index.aspx
Exemple
<a href="index.aspx?o=untest&p=test&o2=unautretest>Unlien</a>
le paramètre o sera envoyé à la page index.aspx et non à test.aspx tandis que o2 sera envoyé aux 2 pages.
Allez j'espère que ça aidera , ciao
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.