我在更新标签文字时遇到问题。不知道我该怎么做呢。
我有一个标签(lable1)和一个文本框(secondTextBox),我有一个用户需要从中选择项目的树视图。过程如下:
用户在树视图中选择一个元素,label1显示默认文本,并显示secondTextBox。当用户更改secondTextBox中的默认文本时,label1内的文本应自动更新,而无需用户按任何东西(请记住,我有大约45个节点需要这个活动,有快速的方法来做这个或我做必须编辑45个节点的代码吗?)。
到目前为止,我能够进行第一次更改,但无论何时用户输入任何内容,标签都不会自动更新,用户必须从树视图中选择其他内容并返回原始文本选择更新。
到目前为止,这是我的代码:
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if (treeView1.SelectedNode.FullPath == @"Node0/Node1")
{
label1.Text = String.Format("Whatever default text there is {0}"
textBox1.Text);
}
}
}
}
以下是默认模式下的屏幕截图。
http://i.stack.imgur.com/0NOlP.jpg
以下是我输入文字时的屏幕截图,但标签框中没有变化:
http://i.stack.imgur.com/3uX53.jpg
非常感谢你。
答案 0 :(得分:7)
看起来您只需要在TextChanged
控件中添加textbox1
事件处理程序。尝试将其放在Form1
构造函数中:
textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
接下来,添加此方法:
private void textBox1_TextChanged(object sender, EventArgs e)
{
label1.Text = String.Format("Whatever default text there is {0}", textBox1.Text)
}
答案 1 :(得分:1)
如果您想在文本框更改时更新标签,则应连接文本框的TextChanged事件:
private void textBox1_TextChanged(object sender, EventArgs e)
{
label1.Text = String.Format("Whatever default text there is {0}", textBox1.Text);
}
使用表单设计器设置事件,或在加载表单时使用dinamically。
答案 2 :(得分:-1)
label1.Text = String.Format("你的文字在这里");