Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Richiamare una f.ne da un altro webform
mercoledì 09 giugno 2004 - 16.46
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
mer 9 giu 2004 - 16:46
Ciao a tutti!
Vorrei chiedere una cosa che potrà sembrare banale (e sicuramente lo è) ma non riesco a risolverla.
Voglio da una webform riuscire a chiamare una funzione presente in un'altra web form, in particolare voglio chiamare da una webform1 la page_load nella webform2.
Come posso fare?
GRAZIE MILLE.
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 9 giu 2004 - 17:12
scusa se te lo chiedo..
ma perchè devi richiamare per forza la page_load?
per quanto ne so io non ha molto senso farlo.. infatti la visibilità della sub è private..
cmq se devi richiamare una funzione, forse è meglio che ti crei una classe, in cui includi tutte le funzioni che ti servono.. poi, includendo in testa il namespace (con imports in VBNET o using in c#) puoi usarla se è di visibilità public..
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
mer 9 giu 2004 - 17:32
La mia idea è di creare una web form e la richiamo tutte le volte che si verifica un errore (per es. un errore di login e psswd) oppure per chiedere conferma di ciò che si è fatto.( passo una stringa che verrà visualizzata sulla form).
e' più chiaro?!
Potresti rispiegarmi come dovrei fare.. scusa ma non ho capito!
GRAZIE mille
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 9 giu 2004 - 18:02
Dunque..
1) per l'errore di login e password dovresti documentarti su MSDN su FormsAuthentication, che ti permette di gestire sia gli accessi a sottocartelle (dovrai andare accanto al web.config) sia le utenze.. ma questo lo lascio a te.. ci sarebbe un'enormità di cose da spiegare =)
2) se ottieni un errore generico, puoi modificare una sezione del web.config per lanciare una pagina standard ad ogni tipo di eccezione che riscontri.
ad esempio
dim cippa as int32
dim i as int16
i = cippa
ammettiamo che cippa superi l'int 16 si scatenerebbe l'errore generico, giusto?
tu devi modificare (o aggiungere se non ce l'hai già) la seguente sezione nel web.config
<customErrors defaultRedirect="indirizzo" mode="On">
<error statusCode="statuscode" redirect="url"/>
</customErrors>
ovviamente in indirizzo devi mettere la pagina che vuoi lanciare.
tutto qui.. =)
3) se vuoi fare una funzione che ad esempio converte una data in un formato ISO (aaaa-mm-gg) devi creare una classe (ad esempio cippa.vb) e poi devi scrivere dentro la function (o la sub) che poi dovrai richiamare.
file class.vb
--------------
class cippa
public function ConvertDateISO(byval d1 as string)
ConvertDateISO = right(d1.trim,4) & "-" & mid(d1.trim,4,2) & "-" & left(d1.trim,2)
end function
end class
ricorda che public è importante perchè rende visibile la function dove la richiami..
Nella form dove vuoi lanciare la funzione (o la sub) dovrai scrivere:
dim myobj as new cippa --> dove cippa è il nome della classe cippa.vb
dim mynewdate as String
dim mydate as String = "10/11/2001"
mynewdate = myobj.ConvertDataISO(mydate)
msgbox(mynewdate)
ok?
questo è uno dei vari metodi per chiamare funzioni..
così lo fai istanziando oggetti, ma potresti usare membri statici oppure potresti estendere un'altra classe ereditando.. e così via, dipende dalle esigenze..
ricorda che i miei esempi sono stati banalissimi.. e anche non troppo precisi =)
spero di averti aiutato..
scrivi pure ;-)
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
gio 10 giu 2004 - 14:25
Grazie mille per l'aiuto!
Solo che non riesco a farlo funzionare.
Grazie anche per la lunga spiegazione (secondo me era già abb. precisa!).
Ho provato sia come mi ha detto Coach: "Dim frm as New FormErrore'
frm.ShowDialog();"
Ho definito la f.ne nel formerrore così:
Public Function showdialog(ByVal stringa)
Label1.Text = stringa
End Function
Passo all'interno della stringa ciò che voglio visualizzare nel form richiamato.
Mi dà questo errore:
"Riferimento a un oggetto non impostato su un'istanza di oggetto."
(ed è questo che avevo in mente di fare)
Poi ho provato anche a fare come dice alex, cioè di convertire la data in un formato ISO,(può essermi sempre utile una cosa del genere!) però mi dice che la funzione non è un membro della classe cippa (io l'ho messo a public!)
Per quanto riguarda il msgbox mi dice:
Impossibile visualizzare un form o una finestra di dialogo modale quando l'applicazione è in esecuzione in una modalità diversa da UserInteractive. Specificare lo stile ServiceNotification o DefaultDesktopOnly per visualizzare una notifica ricevuta da un'applicazione di servizio.
Che posso fare? disastro!!! :(
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 10 giu 2004 - 16:35
allora, tu hai scritto la classe cippa, ok?
bene..
1) il nome del file.vb deve essere lo stesso della classe
cippa.vb
al cui interno deve esserci class cippa
uguale!!! ok?
2) il message box non può andare perchè è un aspx.. usa il response.write =) errore di copia incolla!!
a me funziona!! se vuoi ti mando l'esempio.. però domani.. oggi ero in trasferta =)
ciao!
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
gio 10 giu 2004 - 17:22
Si grazie se puoi mi sarebbe d'aiuto!
Grazie mille
ciao
a domani
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 11 giu 2004 - 10:00
te l'ho mandato alla mail che hai nella tua registrazione..ok?
ciao!! =)
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
ven 11 giu 2004 - 10:01
Ok grazie mille, sei stato veramente molto gentile!
ciao
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 11 giu 2004 - 10:08
quello che ti ha detto coach non va bene per la tua problematica, perchè dovresti richiamare un metodo (lo showDialog()) che è proprio delle windowsForms..
tu stai usando le web forms se non vado errato.. giusto??
comunque, se hai bisogno di spiegazioni, ci sono ;-)
fammi sapere, mi raccomando!
Ale.
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
lun 14 giu 2004 - 11:06
Allora..
sei riuscita?
ti funge?
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
lun 14 giu 2004 - 16:07
ciao ale!
Scusa, ma il tuo messaggio non mi è arrivato!
Quando ti ho risp l'ultima volta venerdì pensavo dovessi ancora mandarlo, poi ho pensato fossi occupato e oggi stavo provando a fare un'altra cosa.
Se ti va di rimandarlo quando puoi, ti dico se mi è arrivato.
Grazie per la tua disponibilità.
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
lun 14 giu 2004 - 16:08
ciao ale!
Scusa, ma il tuo messaggio non mi è arrivato!
Quando ti ho risp l'ultima volta venerdì pensavo dovessi ancora mandarlo, poi ho pensato fossi occupato e oggi stavo provando a fare un'altra cosa.
Se ti va di rimandarlo quando puoi, ti dico se mi è arrivato.
Grazie per la tua disponibilità.
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mar 15 giu 2004 - 09:30
ok.. te lo allego al post.. dimmi se ti è arrivato..
ciao!
jessy
Profilo
| Newbie
33
messaggi | Data Invio:
mar 15 giu 2004 - 13:47
ciao ale!
Si mi è arrivato grazie mille!
ciao ciao
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !