我想在不同的Tabpages下使用标签。因此,当我更新一个时,我希望另一个被更新。这可能吗?
答案 0 :(得分:0)
您可以通过将所有其他标签绑定到源标签来实现此目的,如下所示:
<StackPanel>
<Label Name="lbl1" Content="Woohoooooo"/>
<Label Content="{Binding ElementName=lbl1,Path=Content}"/>
<Label Content="{Binding ElementName=lbl1,Path=Content}"/>
<Label Content="{Binding ElementName=lbl1,Path=Content}"/>
</StackPanel>
所有标签将始终更新其文本,使其与lbl1
编辑:
您使用的是 winforms ,因此上述内容对您不起作用,但是您可以在winforms中使用文本Changed事件来实现。这样的事情应该可以解决问题(未经测试,我不使用winforms):
//in your form constuctor you add the event like this:
NameOfYourSourceTextBox.TextChanged += SourceTextbox_TextChanged;
//to call this function when the text on the label changes
private void SourceTextbox_TextChanged(object sender, EventArgs e)
{
string text = (sender as Label).text;
//now you set all your labels to the same text and from now on you only need to channge the source alabel and all others will follow
Label1.Text = text;
Label2.Text = text;
Label3.Text = text;
}