Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2005
    Messaggi
    83

    [c#] controlli ascx ed eventi

    ciao a tutti...
    ho una pagina con 2 istanze dello stesso controllo ascx e vorrei che la seconda fosse visibile se un campo all'interno della prima è minore di 5.
    come farlo?
    grazie a tutti

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    potresti afare cosi:

    nella prima istanza, passi un riferimento alla seconda,

    dopo di che associ alla variabile una property:
    questa property sara' responsabile di rendere visibile/invisibile il controllo
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2005
    Messaggi
    83
    ciao!si, infatti ho già fatto una property ma questa dove andrebbe richiamata? visto ke sono due istanze a se dello stesso controllo...
    praticamente io ho un controllo indirizzo:
    A- la prima istanza è indirizzo attuale. se il valore della textbox TxDaAnni è <5, allora l'indirizzo è variato negli ultimi 5 anni e quindi va visualizzata la seconda istanza di indirizzo;
    B - la seconda istanza memorizzerà i dati dell'indirizzo precedente.
    il problema è ke se il controllo TxDaAnni.text < 5 lo faccio sulla pagina ke contiene i 2 controlli, mi gira all'infinito x' sarà sempre <5...

    grazie tante

  4. #4
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    Ma la visualizzazione deve avvenire lato client o ci deve essere un roundtrip al server? Nel secondo caso mi sembra di capire che te la caveresti egregiamente con un evento + un delegato + un gestore che porta a compimento le operazioni che ti servono.
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2005
    Messaggi
    83
    Ma la visualizzazione deve avvenire lato client o ci deve essere un roundtrip al server? Nel secondo caso mi sembra di capire che te la caveresti egregiamente con un evento + un delegato + un gestore che porta a compimento le operazioni che ti servono.

    lato client o lato server nn importa, l'importante è ke funziona...
    evento + delegato + gestore... intendi controllo.attributes.add("onclick", "...")? non funziona, già provato con onclick, onblur...
    mi fai un piccolo es di come intedi tu?
    se si ti pago una cena di pesce...
    grazie mille

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Potresti aggiungere il secondo controllo ad un placeholder, se si verifica la condizione che la proprietà (che chiamo ad esempio indice) è < di 5.

    Nel codebehind dello User Control:
    codice:
    Public Sub New()
    .
    .
    End Sub
    
    Public Property indice
     Get ....
     Set ....
    End Property

    Nell'aspx della pagina che ospita i controlli:
    codice:
    <asp:placeholder id="ph" runat=server />
    Nel code-behind della pagina:
    codice:
    Protected withevents ph as PlaceHolder
    Protected withevents controllo1 as new nomeclassecontrollo
    Protected withevents controllo2 as new nomeclassecontrollo
    
    .
    .
    .
    If controllo1.indice < 5 then
     ph.controls.add(controllo2)
    End if
    in questo modo visualizzi la seconda istanza se quella proprieta' della prima soddisfa la tua condizione...

    (edit: rileggendo ora tutto il thread forse il problema e' un po' piu' complesso, la prima soluzione che mi viene in mente e' sfruttare l'autopostback della textbox interna, magari memorizzando il valore nel viewstate...)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.