• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Обновление содержимого формы //c#

  • Автор темы EuGenius
  • Дата начала
Статус
Закрыто для дальнейших ответов.
E

EuGenius

Доброе время суток.
Проблема такова.
Есть форма, содержимое которой заполняется в методе
Код:
private void Form1_Load(object sender, EventArgs e)
При нажатии на кнопку на этой форме открывается новая форма (диалог) поверх предыдущей.
После выхода из этого диалогового окна необходимо обновить содержимое первого окна.
Точнее сказать выполнить код, находящийся в методе Form1_Load.
Подскажите, как разрешить данную проблему.
 
N

NikSoft

Используй рефлексию Смотри здесь
 
E

EuGenius

А можно как-то другим путем? Например, через ссылки на объекты родительских окон?
 
N

NikSoft

Код:
А можно как-то другим путем? Например, через ссылки на объекты родительских окон?
Попробуй использовать свойство Parent класса Form. Вот пример

Код:
// This example uses the Parent property and the Find method of Control to set
// properties on the parent control of a Button and its Form. The example assumes
// that a Button control named button1 is located within a GroupBox control. The 
// example also assumes that the Click event of the Button control is connected to
// the event handler method defined in the example.
private void button1_Click(object sender, System.EventArgs e)
{
// Get the control the Button control is located in. In this case a GroupBox.
Control control = button1.Parent;
// Set the text and backcolor of the parent control.
control.Text = "My Groupbox";
control.BackColor = Color.Blue;
// Get the form that the Button control is contained within.
Form myForm = button1.FindForm();
// Set the text and color of the form containing the Button.
myForm.Text = "The Form of My Control";
myForm.BackColor = Color.Red;
}
 
E

EuGenius

В принципе я уже сделал откоытой Form1_Load().
Какие аргументы надо ей передать?
 
N

NikSoft

А ты используешь арг e функции Form1_Load?
 
P

Pasha

<!--QuoteBegin-EuGenius+6:04:2007, 08:34 -->
<span class="vbquote">(EuGenius @ 6:04:2007, 08:34 )</span><!--QuoteEBegin-->В принципе я уже сделал откоытой Form1_Load().
Какие аргументы надо ей передать?
[snapback]61583" rel="nofollow" target="_blank[/snapback]​
[/quote]
Напиши лучше свою функцию, скажем, public void UpdateFormContents(). И вызывай ее и из Form_Load, и из дочерней формы.

P.S. Рефле́ксия (от позднелат. reflexio — обращение назад) — размышление, деятельность самосознания, способность к анализу собственного психологического состояния.
 
M

mr_ST

Код:
private void Form1_Load(object sender, EventArgs e)
{
FillForm();
}

void ClickSomethingHandler(object sender, EventArgs e)
{
using( Form2 frm2 = new Form2())
{
frm2.ShowDialog();
FillForm();
}
}

private void FillForm()
{
//заполняем форму
}

Всё остальное от лукавого B)
 
E

evan

Можно еще при создании дочерней формы прописать ей обработчиком нужного события метод главной формы...
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!