2015-07-14 7 views
-1

Как получить доступ к текстовому блоку в form1, когда я нажимаю кнопку от form2?C# формы и текстовые поля

Я хочу написать конкретный текст в textBox в form1 после того, как я нажму кнопку от form2, и он закрывается.

+1

Совершенно неясно, что вы просите. Предоставьте код, который объясняет это. –

+0

Возможный дубликат [Лучший способ доступа к элементу управления в другой форме в Windows Forms?] (Http://stackoverflow.com/questions/8566/best-way-to-access-a-control-on-another-form- in-windows-forms) –

+0

Возможный дубликат [Передача значений между двумя формами окон] (http://stackoverflow.com/questions/3227016/passing-values-between-two-windows-forms) – Equalsk

ответ

1

Как я догадался, вы можете решить проблему, как

Form1.cs

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 
    private void button1_Click(object sender, EventArgs e) 
    { 
     LaunchForm2(); 
    } 
    private void LaunchForm2() 
    { 
     using (var form2 = new Form2()) 
     { 
      form2.OnTextEnteredHandler += Form2_OnTextEnteredHandler; 
      form2.ShowDialog(); 
     } 
    } 

    private void Form2_OnTextEnteredHandler(string text) 
    { 
     //This event will be fire when you click on button on form2 
     textBox1.Text = text; 
    } 
} 

Form2.cs

public partial class Form2 : Form 
{ 
    public delegate void TextEnteredHandler(string text); 
    public event TextEnteredHandler OnTextEnteredHandler; 
    public Form2() 
    { 
     InitializeComponent(); 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     if (OnTextEnteredHandler != null) 
     { 
      OnTextEnteredHandler(textBox1.Text); 
      Close(); 
     } 
    } 
} 

Вам нужно добавить текстовое поле в форме 2, а также, поместить в него текст из формы 2, затем нажмите кнопку, как показано в коде.

Смежные вопросы