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
Modificare la label di un form da una classe esterna
lunedì 05 settembre 2005 - 23.01
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
astroman
Profilo
| Junior Member
105
messaggi | Data Invio:
lun 5 set 2005 - 23:01
In pratica, sto creando una classe esterna in cui effettuo una serie di operazioni chiamandola..quando le ho effettuate voglio scrivere il risultato su una label di un form...come posso fare?
Non riesco a capire come referenziare un form dentro una classe esterna..
E' abbastanza importante e urgente..grazie a tutti
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 5 set 2005 - 23:34
Per scrivere in un form "altro" devi avere un riferimento valido.
Non si può semplicemente utilizzare la sintassi del vecchio vb come ad esempio form.label.caption (a parte che caption non esiste più).
Per ottenere quello che ti prefiggi puoi agire in molti modi per cui non te ne suggerisco nessuno.
Se cerchi tra i messaggi del forum, sicuramente trovi molte risposte, alcune mie.
astroman
Profilo
| Junior Member
105
messaggi | Data Invio:
lun 5 set 2005 - 23:39
Si su questo ne sono perfettamente cosciente poichè utilizzo già referenziarmi su un form da un altro...
in pratica se io avessi un form chiamato Form1 e nella mia classe test avessi:
public class test
{
private Form1 f;
public test(Form1 frm1)
{
this.f=(frm1)this.f;
}
}
il referenziamento potrebbe essere corretto?
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 5 set 2005 - 23:58
Non credo che funzioni, non puoi mettere una nuova istanza della form devi mettere proprio quella attiva.
Una cosa del genere (che però per scrivere solo una label mi sembra un pò eccessiva), eventualmente referenzia la label che è meglio!.
private Form mFormReferenziata;
public Form FormReferenziata
{
get
{
return mFormReferenziata;
}
set
{
mFormReferenziata = value;
}
}
Se questo lo inserisci nella classe nella form che deve essere referenziata devi mettere:
myclass.FormReferenziata = this;
Puoi risolvere lo stesso problema utilizzando un costruttore che accetta la form come argomento oppure anche il metodo che accetta la form come argomento (o la label naturalmente).
astroman
Profilo
| Junior Member
105
messaggi | Data Invio:
mar 6 set 2005 - 00:07
Beh in effetti hai ragione...forse mi sto complicando la vita come al solito!:D
L'idea che metterò in pratica è di passare la label che devo modificare..semplice ed efficace!:D
Grazie mille per il suggerimento
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 !