|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: May 2006
Città: Bari
Messaggi: 274
|
[visual c#] Refresh main da altra classe
Salve a tutti ho un problema da cui nn riesco proprio ad uscirne. Ora vi spiego bene il problema:
ho creato una classe class PnlProva : Panel per estendere (credo, non sò se si dice così Dal main creo diversi oggetti di tipo PnlProva che visualizzo sullo stesso main. A questo punto volevo creare l'evento doppioclick su questi pannellini PnlProva, quindi l'ho fatto da dentro la classe PnlProva : Panel. Ed è qui che sorge il problema, perchè facendo in questo modo riesco a creare l'evento doppio click, ma dopo aver mostrato un form (con showdialog()) e aver salvato, avrei bisogno di chiamare una classe del main per "refreshare" il contenuto del main. Ma non riesco proprio a farlo. Ho provato a creare un metodo static nel main però nn funziona perchè poi nn riesce ad utilizzare nessuna degli attributi che definisco nel main. C'è qualcuno che mi potrebbe aiutare?Ormai sono diversi giorni che ci provo, ma nn mi è venuta in mente nessuna idea per farlo funzionare. Grazie in anticipo.
__________________
MY PC --> Seasonic M12-500Watt + Asus P5B Deluxe WiFi/AP + Intel Q9550 + 4 GB G.Skill 1066Mhz + 1 Hd W.D. 74 GB Raptor 10kRpm + Seagate 750GB + Asus Nvidia 9800GTX! |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Perdona, ma il Sab mattina ci vuol pazienza... Questo "main" a cui fai riferimento è un "Pannello-Main" ( e quindi inseriresti N pannelli che ereditano dallo stesso PnlProva... ), è una "Form-Main", o... cosa ? ![]() Meglio se tu potessi postare un esempio essenziale di codice, ovviamente... |
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: May 2006
Città: Bari
Messaggi: 274
|
heheh hai ragione nn si capisce molto bene.
allora: Classe Main () del programma | | |--> Pannello Pippo | |-> PnlProva() | |-> PnlProva() | |-> PnlProva() | |-> PnlProva() ecco com'è fatto. nel Main() ho una classe che mi fa il refresh del pannello pippo, che a sua volta ricrea tutti gli oggetti PnlProva. Quindi volevo sapere, esiste un modo per lanciare il refresh dal pannello PnlProva all'evento click del mouse? Ho provato con una classe static nel Main(), ma siccome per funzionare il refresh ha bisogno di parekki attributi e altri metodi (tutti ovviamente nn static) non riesco a farlo funzionare. Qualche idea come risolvere? Grazie
__________________
MY PC --> Seasonic M12-500Watt + Asus P5B Deluxe WiFi/AP + Intel Q9550 + 4 GB G.Skill 1066Mhz + 1 Hd W.D. 74 GB Raptor 10kRpm + Seagate 750GB + Asus Nvidia 9800GTX! |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Codice:
static class Program
{
/// <summary>
/// Punto di ingresso principale dell'applicazione.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
Quindi puoi forzare il Refresh del contenitore, partendo dal controllo con : Codice:
panel1.Parent.Refresh(); Codice:
this.Parent.Refresh(); Codice:
foreach (Control C in this.Parent.Controls) {
C.Refresh();
}
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:36.




















