繁体   English   中英

如何将文本从表单返回到文本框C#?

[英]How can I return text from a form to a textbox C#?

在我的C#程序中,我有一堆自动生成的文本框。 在这些文本框中,我添加了一个click事件,该事件将启动带有三个下拉框的表单。 用户为每个框选择一个值后,单击确定,然后将该值放置在文本框中。

截至目前,单击事件已正常触发,并且出现了对话框。 但是,单击“确定”后,数据永远不会放在文本框中。 这是我的点击事件。

private void clickTextBox(object sender, EventArgs e)
        {
            //MessageBox.Show(connectString + " " + unit);
            frmPickOven f = new frmPickOven(connectString, unit);
            if (f.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }
            else
            {
                this.Text = "";
                Console.WriteLine("Before: " + this.Text);
                this.Text = f.Oven;
                Console.WriteLine("After: " + this.Text);
            }
        }

Before:始终为空白。

After:显示新值,但该值未写入文本框。

我只是意识到该值正在写入表单的标题。 我认为this将指代称为函数的任何东西,但显然不是。 如何设置调用该函数的文本框的值?

该函数的sender参数是引发事件的控件。

((TextBox)sender).Text = ...

this.Text是指包含TextBoxForm标题。 您应该将其更改为

((TextBox) sender).Text = f.Oven;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM