我是一名新的c#程序员,无法根据文本框值更新我以编程方式添加的标签。如果使用表单设计器添加文本框和标签,但是数量文本框和标签将根据我的用户数据而有所不同,那么它将正常工作,因此我将使用代码添加它们。遗憾的是,在Text_Changed事件中无法访问代码中添加的标签,而我在互联网上的搜索并未明确如何实现此目的。以下是我的代码。
namespace Test_Form_Controls
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
TextBox txtBox1 = new TextBox();
txtBox1.Text = "0";
txtBox1.Location = new Point(100, 25);
Controls.Add(txtBox1);
txtBox1.TextChanged += txtBox1_TextChanged;
Label label1 = new Label();
label1.Text = "0";
label1.Location = new Point(25, 25);
Controls.Add(label1);
}
private void txtBox1_TextChanged(object sender, EventArgs e)
{
TextBox objTextBox = (TextBox)sender;
label1.Text = objTextBox.Text;
}
}
}
答案 0 :(得分:0)
将您的标签移至私人字段
namespace Test_Form_Controls
{
public partial class Form1 : Form
{
Label label1;
public Form1()
{
InitializeComponent();
TextBox txtBox1 = new TextBox();
txtBox1.Text = "0";
txtBox1.Location = new Point(100, 25);
Controls.Add(txtBox1);
txtBox1.TextChanged += txtBox1_TextChanged;
label1 = new Label();
label1.Text = "0";
label1.Location = new Point(25, 25);
Controls.Add(label1);
}
private void txtBox1_TextChanged(object sender, EventArgs e)
{
TextBox objTextBox = (TextBox)sender;
label1.Text = objTextBox.Text;
}
}
}