C# 如何从文本框更新标签文本

C# 如何从文本框更新标签文本,c#,winforms,textbox,label,marquee,C#,Winforms,Textbox,Label,Marquee,我有一个最大长度为15个字符的标签,还有一个最大长度为无穷大的多行文本框。当我在文本框中键入文本以将其文本更新为标签时,我希望它会这样做,但当标签达到其make length时,它会删除第一个字符,并用文本框中的下一个字母替换最后一个字符。所以,基本上它看起来像一个框左效果,但在我打字时会实时更新。我该怎么做 这就是我想到的 private void textBox1_TextChanged(object sender, EventArgs e) { String

我有一个最大长度为15个字符的标签,还有一个最大长度为无穷大的多行文本框。当我在文本框中键入文本以将其文本更新为标签时,我希望它会这样做,但当标签达到其make length时,它会删除第一个字符,并用文本框中的下一个字母替换最后一个字符。所以,基本上它看起来像一个框左效果,但在我打字时会实时更新。我该怎么做

这就是我想到的

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        String text = textBox1.Text.Replace("\r\n", "|");

        int startIndex = ((text.Length - 1) / 15) * 15;

        label1.Text = text.Substring(Math.Max(0, startIndex));
    }
但它删除了文本后,它达到15个字符,并再次写入我希望它流的文本,好像它是滚动到左边

private void textBox1_TextChanged(object sender, EventArgs e)
{
    label1.Text = textBox1.Text.Length <= 15
                        ? textBox1.Text
                        : new string(textBox1.Text.Skip(textBox1.Text.Length - 15).ToArray());
}
用这个

int startIndex = text.Length - 15;

你试过什么吗?这听起来像是一个基本的if和子查询操作?您必须编写一些代码,没有内置属性。尝试编写代码更新您的问题。我尝试过子字符串和stringbuilder,但我不知道该怎么做。@IanLundberg-将您的尝试包含在您的问题中,我们将尝试帮助您解决它。@CodyGray和M.Babcock我包含了它
int startIndex = text.Length - 15;