• User

    [ASP.NET] Interazione tra 2 User Control

    Ecco lo scenario:
    Pagina con 2 UserControl

    • uc1
    • uc2su un evento generato da uc1 si genera un postback e vado a settare un attributo di uc2.
      La pagina si ricarica, ma l'attributo verrà settato dopo l'evento load di uc2.
      Se analizzo l'evento preRender di uc2 vedo l'attributo settato correttamente, ma a questo punto non mi serve più. Mi serviva al momento di uc2_onLoad, non dopo.
      Ho provato a mettere il valore dell'attributo anche in una proprietà di una classe appositamente creata ed importata in tutti e 2 gli uc, ma il risultato è lo stesso.
      E' come se l'assegnazione la facesse dopo il postback, quindi non ci posso fare (o meglio non so farci) nulla.

    da uc1 in pratica scrivo:

    
    Dim control2 as New UserControl
    control2 = Me.NamingContainer.FindControl("uc2")
    control2.Attributes.Item("operazione") = "ciccia"
    
    

  • User

    uno alla volta please...
    🙂

    Ho cercato qualcosa in giro, forse mi devo studiare le interfacce....????
    che p***e....


  • User

    😄 son contento anche se ho pasticciato un pò...

    Ho creato una classettina che gestisce i comandi su uc1, spostandomi i valori sull'evento OnClick dei controlli presenti in uc1 in session e poi riprendendoli in tutte le pagine (oppure nei diversi controlli)
    Non sono pazzo ad aver fatto una doppia fatica (cioè metti e togli dalla session) ma così evito che a scadenza della session per inattività vadano a puttana i dati ( la classe infatti li riporta sulla session in elaborazione); e poi ho anche i dati già "castizzati" non in stringa come la session, accessibile tramite properties in sola lettura...;)

    (Veramente ho dubbi sul fatto che la Garbage Collection mi distrugga l'oggetto e per questo chiedo a voi...lo fà vero? se si in genere dopo quanto?)


    Fatto questo devo solo instanziare la classe in tutte le pagine ed i dati li ho sempre freschi sia dall'oggetto che dalla session.

    Non sono pazzo ad aver fatto questi giri, ma passo di volta in volta una cifra di dati. Uc1 è infatti un menù fatto a controllo utente che legge Xml.
    Nell'Xml setto i bottoni, il loro aspetto, e il comando. Per comando intendo se devono fare un redirect, un serverTransfer, oppure rimanere sulla pagina ed eseguire una Subroutine con parametri, oppure fare tutte queste cose insieme (redirect/transfer ed all'arrivo subroutine..)

    Qualcuno potrà dire perchè non l'ho fatto con le querystring....lo sò, ma sono sotto studio del .Net, quindi mi fa comodo fare esperienza con le classi...:D

    Appena finito estrapolo il menù e lo metto a disposizione...
    Ciao a tutti