Как вы обрабатываете подсказку статуса родительской winform дочерней winform? - PullRequest
1 голос
/ 16 сентября 2011

мой код:

в parent_Form:

    public parent_Form()
    {
        InitializeComponent();
    }

    private void button_Click(object sender, EventArgs e)
    {
        child ch = new child();
        ch.MdiParent = this;
        ch.Show();
    }
    public string label
    {
        set
        {
            textBox1.Text = value;
        }
    }

в дочерней форме:

    public child()
    {
        InitializeComponent();
    }

    private void write_button_Click(object sender, EventArgs e)
    {
        parent_Form paren = new parent_Form();
        paren.label = "i am vietnamese";
    }

но «Я вьетнамский» не отображается в textbox1 (это в родительской форме win)

Ответы [ 2 ]

2 голосов
/ 16 сентября 2011

Эта строка:

parent_Form paren = new parent_Form();

Создает новый parent_Form, который никогда не отображается. Вам нужно сослаться на фактического родителя так:

((parent_Form)MdiParent).label = "i am vietnamese";
0 голосов
/ 16 сентября 2011

Решение JRoughan должно работать.Убедитесь, что вы правильно указали обработчик нажатия кнопки.Установите точку останова в обработчике, чтобы убедиться, что она выполняется при нажатии кнопки.Я проверил это, и это работает.

public child()
{
  InitializeComponent();
}

private void write_button_Click(object sender, EventArgs e)
{
    parent_Form paren = ((parent_Form)MdiParent);
    paren.label = "i am vietnamese";
}
...