【问题标题】:Display remaining textbox characters C#显示剩余的文本框字符 C#
【发布时间】:2011-11-02 08:28:31
【问题描述】:

我只是想知道如何在我的文本框中显示剩余字符,以防用户输入超出字符限制。

例如,这是我的文本框:

输入姓名:_____________ 剩余 50 个字符

当用户输入已经是 50 个字符时,他/她将无法再在该文本框中输入任何内容。那可能吗?任何帮助,将不胜感激。提前致谢。

【问题讨论】:

  • 您使用的是什么 UI 技术?表格? ASP.NET? MVC?银光? WPF?
  • 没有TestBox.MaxLength 属性吗?显示剩余的字符只是一些数学运算。

标签: c# textbox character max


【解决方案1】:

首先将MaxLength property of the textbox 设置为50。 然后你需要订阅文本框的TextChanged事件,当框的文本发生变化时得到通知,并通过textBox.TextLength减去textBox.MaxLength计算剩余字符

【讨论】:

    【解决方案2】:

    您需要TextBoxMaxLength 属性。

    您可以通过在文本框大小合适的标签上使用标签来实现您想要的效果。在输入的每个键上,您都可以将该标签的标题更新为 $"{textbox1.MaxLength - textbox1.Text.Length()} characters"

    【讨论】:

      【解决方案3】:

      把它放在文本框更改事件中。

      labelForRemainingChars.Caption = txtMyTextBox.MaxLength - txtMyTextBox.TextLength;

      编辑:这适用于 winforms。

      【讨论】:

      • @Kristina:你的目标是什么 GUI? Winforms/WPF/ASP.net?
      【解决方案4】:

      首先,不清楚,但看起来您将Name: 部分也放入了文本框中,这确实应该放入标签中。剩下的字符也是如此。

      关于剩余字符的计算,使用文本框的KeyPress事件。

      您的该事件的代码将是这样的

      private void textBox_KeyPress(object sender, EventArgs e)
      {
          var max = 100;
          label.Text = (max - this.Text) + " Characters remaining);
      }
      

      希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多