Передать метод в новый контроль формы - PullRequest
0 голосов
/ 31 мая 2018

Итак, у меня есть 2 формы: Form1 и Form2

В Form1 у меня есть этот код:

pubilc class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    public void Button1_Click(object sender, EventArgs e)
    {
        Form2 newForm = new Form2(); //Here i want to pass MyFunction
    }

    public void MyFunction()
    {
        MessageBox.Show("This is passed function from " + this.Text);
    }
}

И в Form2 у меня есть это:

public class Form2 : Form
{
    public Form2() //Here i want to receive Form1.MyFunction
    {
        InitializeComponent();
        this.Button1.Click += new System.EventHandler(passedFunction);
    }
}

В коде выше вы можете получить мою точку зрения.Имея форму с элементами управления, которым я бы назначил Eventhandlers с переданной функцией при создании этой формы.

Я ничего не пробовал, так как не знаю, как передать метод в форму.

1 Ответ

0 голосов
/ 31 мая 2018

Попробуйте это:

public class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    public void Button1_Click(object sender, EventArgs e)
    {
        Form2 newForm = new Form2(MyFunction); //Here i want to pass MyFunction
    }

    public void MyFunction(object sender, EventArgs e)
    {
        MessageBox.Show("This is passed function from " + this.Text);
    }
}

public class Form2 : Form
{
    public Form2(EventHandler passedFunction) //Here i want to receive Form1.MyFunction
    {
        InitializeComponent();
        this.Button1.Click += passedFunction;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...