У меня есть главная форма, и я хотел бы, чтобы нажать на кнопку, и есть веб-страница отображается в новой форме с помощью элемента управления WebBrowser, это то, что у меня есть:Открыть новую форму из главной формы и использования WebBrowser
private void button1_Click(object sender, EventArgs e)
{
Form1 MyForm = new Form1();
MyForm.ShowDialog();
MyForm.webBrowser1.Navigate("http://www.twitter.com/");
}
Основное название формы - «Twitter», это ошибка, которую я получаю: «Twitter.Form1.webBrowser1» недоступен из-за уровня защиты. Кажется достаточно простым. Как я могу это сделать?
(1) Сделать webBrowser1 общественным членом класса Form1. (2) AFAIK ShowDialog не вернется, пока MyForm не будет закрыт. – kol
@kol правильно, измените его на 'MyForm.Show()', если вы хотите, чтобы он сразу перешел к следующей строке и перемещался. Конечно, чтобы _really_ сделать это правильно, вы передадите этот URL как параметр в конструктор для MyForm, сохраните его в частном члене, а затем вызовите 'Navigate' в методе' Shown' 'MyForm'. Тогда вам не нужно было бы выставлять 'webBrowser1' другому классу (-ам), и вы все равно можете использовать' ShowDialog() 'и сохранить возможность ждать' FormClosed() ', чтобы произойти, прежде чем продолжить. – DonBoitnott