从其他窗体文本框调用函数不会更改

本文关键字:函数 调用 其他 窗体 文本 | 更新日期: 2023-09-27 18:37:11

我正在尝试在按钮单击时从不同的形式调用方法。如果我调试它,它确实会转到我尝试调用的方法,但是一旦我尝试更改此函数中的文本框,它就不起作用。

这是我的函数

public void addedtram(string tramno, string rail, string lineno, string sect)
    {
        String tbx = "tbx_sect" + 1 +"L"+ 2;
        TextBox tb = (TextBox)this.FindControl(tbx) as TextBox;
        if (tb != null)
        {
            tb.Text = tramno;
            tbx_sect10L1.Text = tramno;
        }
    }

我只是把它作为一个测试,因为我确定 tbx 存在,但在调试中它确实说tb.Text = "1234"(示例),但它没有显示在我的表单上。

有没有人知道这里可能有什么问题?

从其他窗体文本框调用函数不会更改

如果我理解正确,您应该使用属性公开文本框的内容:

class Form1 {
  public string txtbox {
    get { return textBox1.Text; }
  }
}

然后在 Form2 中执行以下操作:

var frm = new Form1();
textBox1.Text = frm1.txtbox;

您可以将 frm 设置为 Form2 的类变量并调用 。Show() 在 Form2 的构造函数中。