Pavel_PKlasický postup jest do rozhraní Form2 přidat něco, co ti bude vracet požadovaná vnitřní data. V C++ bys normálně použil getter metodu, v C# jsou na to (jako) dělané properties. Takže zkrátka udělej ve Form2 nějakou property, která jen vrací řetězec z příslušného textboxu. Pak jednoduše můžeš přes tuhle property číst obsah textboxu, aniž bys nějak lezl do internals Form2.
Příklady táhnou - takže...
Ve Form2 budiž něco jako:
// místo public klidně internal, pokud to vyhovuje záměru
public string MyStringValue { get { return this.someTextBox.Text; } }
Ve Form1 pak někde máš proměnnou typu Form2 (dle libosti klidně aj lokální), řádně inicializovanou na non-null a můžeš psát třeba:
// Form2 form2;
form2.ShowDialog();
string result = form2.MyStringValue;
|