1

好的,我有 2 个表格。form8 包含数据网格视图。第二个(form10)表单包含一个文本框和一个图片框。这是我试图用来传递数据的代码,但它不起作用。

    Form8 frm8;
    public Form10(Form8 frm8): this()
    {
        this.frm8 = frm8;
    }

    private void buttonX1_Click(object sender, EventArgs e)
    {
        try
        {
            int n = frm8.dataGridView1.Rows.Add();
            frm8.dataGridView1.Rows[n].Cells[0].Value = textBox1.Text;
            frm8.dataGridView1.Rows[n].Cells[1].Value = comboBox1.Text + "|" + textBox3.Text;
            frm8.dataGridView1.Rows[n].Cells[2].Value = pictureBox1.Image;
            this.Close();
        }
        catch { }
    }
4

2 回答 2

1

请尝试刷新表单以获取结果。

frm8.dataGridView1.Invalidate();

或尝试 Application.DoEvents() 以刷新 UI 线程。

于 2012-07-04T07:15:31.547 回答
0

最好创建一个来自 Form10 的事件,并在 form8 中注册该事件,以便在单击按钮时将数据传递给 form8。

您还应该对异常记录做一些事情,并坚持命名约定以使您的代码更具可读性

于 2012-07-04T07:13:45.357 回答