用按钮单击更改标签文本
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用按钮单击更改标签文本相关的知识,希望对你有一定的参考价值。
我需要更改按钮单击时标签的文本,但它不起作用并给我运行时错误。我有LABEL的单独类和BUTTON分开。这是虚拟代码。真实代码包含位置和大小标签和按钮。一切都是动态创建的。谢谢!
/-------------------------------------LABEL class-------------------------------/
private Label label1;
public Label getLabel1()
{
return label1;
}
public LABEL()
{
label1 = new Label();
}
public void print()
{
label1.Text = "x";
Controls.Add(label1);
}//
/-------------------------------------BUTTON class----------------------------------/
private Button button1;
public BUTTON()
{
}
public void print()
{
button1 = new Button();
button1.Click +=new EventHandler(button1_Click);
Controls.Add(button1);
}
public void button1_Click(object sender, EventArgs e)
{
LABEL label = new LABEL();
label.getLabel1().Text = "y";
}
答案
你可以试试吧。
private void button1_Click(object sender, EventArgs e){label1.Text = "Hi";label1.Refresh();}
另一答案
您正在尝试更改空引用标签的文本:
// Label Class
private Label label1;
public Label getLabel1()
{
return label1;
}
// Button Class
LABEL label1 = new LABEL();
label1.getLabel1().Text = "y";
// getLabel1 is returning null, because you have not initialized label1
为了使代码有效,您必须更改以下内容:
public LABEL()
{
label1 = new Label();
}
public void print()
{
label1.Text = "x";
Controls.Add(label1);
}
希望这可以帮助!
以上是关于用按钮单击更改标签文本的主要内容,如果未能解决你的问题,请参考以下文章