Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Form in dll
Forum - C# / VB.NET - Form in dll

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 19:23
Martedì, 16/06/2009
Ho letto qui come fare a includere e caricare un form in formato dll http://www.pierotofy.it/pages/extras/forum/16/44065-form_i ...

Ma se volessi includere più form nella stessa dll? Però fare in modo che per esempio ho 2 form nella dll, apro il primo con il mio exe pincipale e poi apro il secondo dal form1 della dll
Mi da errore Form2.Show() alla compilazione, come si può fare?

Poi una volta aperto uno o più form da una dll come faccio a chiuderli tutti dal prog principale (.exe)?

Grazie in anticipo

Ultima modifica effettuata da Exit93 il 16/06/2009 alle 19:26
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 9:51
Mercoledì, 17/06/2009
Form2.Show() è scritto dove, nel programma o nel codice della libreria? E in che punto di questi? E quale errore produce? Mi domando se le persone leggano il regolamento prima di postare.

PM Quote
Avatar
13Booob13 (Normal User)
Newbie


Messaggi: 13
Iscritto: 09/06/2008

Segnala al moderatore
Postato alle 13:04
Mercoledì, 17/06/2009
Testo quotato

Postato originariamente da Il Totem:

Form2.Show() è scritto dove, nel programma o nel codice della libreria? E in che punto di questi? E quale errore produce? Mi domando se le persone leggano il regolamento prima di postare.


Rispondo io al posto suo, Poichè il problema era di entrambi (stiamo lavorando per lo stesso progetto).
Form2.Show è scritto nel codice della libreria, non nel programma.
Cioè cliccando su un immagine dovrebbe aprirsi l'altro form, peccato che da questo errore:
"Il riferimento a un membro non condiviso richiede un riferimento a un oggetto."

PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 22:24
Mercoledì, 17/06/2009
Potete postare il codice in cui caricate la Form2 dalla dll? Sicuramente il problema si trova lì (il vostro codice non riesce a creare un'istanza della Form2).

PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 22:33
Mercoledì, 17/06/2009
Il problema è che, non centrando nulla l'errore con il metodo Show del form, è difficile aiutarvi senza vedere del codice.

Dall'errore che ricevete, è chiaro che non è stata creata istanza dell'oggetto Form2 .... il perchè, lo sapete solo voi.

Ciao.

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 9:54
Giovedì, 18/06/2009
Testo quotato

Postato originariamente da Jeremy:
Dall'errore che ricevete, è chiaro che non è stata creata istanza dell'oggetto Form2 .... il perchè, lo sapete solo voi.



:yup: Vi state riferendo al tipo Form2, e non ad una sua istanza.

PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 21:11
Giovedì, 18/06/2009
Testo quotato

Postato originariamente da Il Totem:
:yup: Vi state riferendo al tipo Form2, e non ad una sua istanza.



In un progetto WinForms, il tipo Formn2 avrebbe un'istanza predefinita ... ma in un progetto libreria NO! ;)

PM Quote
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 22:13
Giovedì, 18/06/2009
Quindi come creo un'istanza?


E per questo?
Testo quotato

Poi una volta aperto uno o più form da una dll come faccio a chiuderli tutti dal prog principale (.exe)?


Ultima modifica effettuata da Exit93 il 18/06/2009 alle 22:14
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 1:33
Venerdì, 19/06/2009
Per l'istanza:
Codice sorgente - presumibilmente C# / VB.NET

  1. Dim frm2 as New Form2
  2. frm2.Show()



Per la seconda domanda:

Dall'applicazione principale richiamate una sub chiudi:
Codice sorgente - presumibilmente Plain Text

  1. frm1.Chiudi(frm2)


così implementata
Codice sorgente - presumibilmente VB.NET

  1. Public Sub Chiudi(byVal form2 as Form)
  2. form2.Close()
  3. Me.Close()
  4. end sub



Ovviamente dovete passare alla sub l'istanza precedentemente ottenuta e essa stessa deve essere chiamata tramite un'istanza della form1.

Ultima modifica effettuata da manvb.net il 19/06/2009 alle 1:36
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo