C# richtextbox отображать количество оставшихся символов
Да, я уже исследовал этот вопрос. Я нашел это: Как отобразить оставшиеся символы текстового поля в метке в C#? и многим другим просто нравится Вот как мне удалось собрать следующий код:
protected void rtdDisclaimer(object sender, EventArgs e)
{
lblCharCount.Text = "Characters Remaining:" + (700 - rtbDisclaimer.Text.Length).ToString(); // char count limit set to 700
}
Я никогда раньше не программировал на C#, но работаю над групповым проектом, и этот язык выбрал руководитель группы. Я новичок в программировании и имею минимальный опыт работы с Java. Эта программа делается в визуальной студии. Я пытаюсь сделать так, чтобы метка показывала количество оставшихся символов в зависимости от того, что набрано в richtextbox. Ошибок нет, но на этикетке вообще ничего не отображается.
3 ответа
Вы должны связать метод с событием с измененным текстом элемента управления.
protected void rtbDisclaimerTextChanged(object sender, EventArgs e)
{
lblCharCount.Text = "Characters Remaining:" + (700 - rtbDisclaimer.Text.Length).ToString(); // char count limit set to 700
}
В конструкторе после InitializeComponent() вы должны добавить следующую строку:
rtbDisclaimer.TextChanged += new EventHandler(rtbDisclaimerTextChanged);
Ваш код будет работать, но вам нужно прикрепить метод к правильному событию на вашем RichTextBox
, так что он вызовет этот код при возникновении события.
Добавьте это к конструктору вашего Form
:
rtbDisclaimer.TextChanged += rtdDisclaimer;
Функция, которую вы упомянули в своем вопросе, кажется серверной, и вы можете вызывать ее в случае события, например нажатия кнопки. Если вы хотите отображать длину символов при наборе текста, используйте JavaScript/jQuery
лайк
$('textarea').keyup(updateCount);
$('textarea').keydown(updateCount);
function updateCount() {
var cs = $(this).val().length;
$('#characters').text(cs);
}
Проверьте это тоже. Пример JsFiddle (от Dreami)
Хепе это помогает!