Bonjour, La méthode FindControl n'est pas récursive, en effet, d'où ton problème. Voici un code qui va fonctionner, mais çà me semble maladroit de passer par FindControl,
If (Page.PreviousPage IsNot Nothing) Then Dim txtNom As TextBox = Page.PreviousPage.Controls(0).FindControl("form1").FindControl("ContentPlaceHolder1").FindControl("txtNom") Label1.Text = txtNom.Text End If
Si tu t'attend à venir d'une previous page particulière, c'est plus simple de coupler fortement les 2 pages. Il te faut dans la page source (Page1): - définir des propriétés publique permettant d'exposer les éléments à récupérer depuis la page de destination par exemple :
Public ReadOnly Property Nom() As String Get Return txtNom.Text End Get End Property
Dans la page de destination (Page2): - rajouter une directive dans la page .ASPX <%@ PreviousPageType VirtualPath="~/Page1.aspx" %> - Lire les membres de la previous page comme ceci : Label1.Text = CType(Page.PreviousPage, Page1).Nom ou Label1.Text = ((Page1)Page.PreviousPage).Nom
Cordialement, Daniel - MCSD.NET, MCT
|