Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Записать в RichTextBox  (Прочитано 7571 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Gor
Постоялец

ru
Offline Offline

« : 24-02-2011 19:27 » 

В RichTextBox'е, изначально используя Properties, в поле Text введена определенная строка. С помощью следующего кода щелчком мыши в RichTextBox'е, эту строку убираю:

Код:
namespace Rem
{
    public partial class Form_panels_user : Form
    {
        public Form_panels_user()
        {
            InitializeComponent();

            if (richTextBox_user != null)
                richTextBox_user.Click += richTextBox_user_TextChanged;
        }

        private void Form_panels_user_Load(object sender, EventArgs e)
        {
           
        }

        private void richTextBox_user_TextChanged(object sender, EventArgs e)
        {
            richTextBox_user.Text = null;
        }
    }
}
Затем в пустом RichTextBox'е нужно, что-то ввести с клавиатуры. Но поскольку
Код:
richTextBox_user.Text = null;
, то ничего не дает вводить.

Как этот вопрос можно решить? Недавно изучаю C#, отсюда «могучесть» вопроса Да что ты говоришь?...

Спасибо.

P.S. Работаю в Visual C# 2008.
Записан
Сергей
Интересующийся

ua
Offline Offline

« Ответ #1 : 24-02-2011 19:42 » 

попробуй richTextBox_user.Text = "";
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #2 : 24-02-2011 20:12 » 

Ребят, вобще-то программирование это не просто забивание кода, в надежде, что вдруг оно само заработает как надо.

Объясните сначала логику простым человеческим языком и, если не найдёте противоречий, переходите к кодированию.

Вот это место меня интересует в мельчайших деталях:

Код:
        private void richTextBox_user_TextChanged(object sender, EventArgs e)
        {
            richTextBox_user.Text = null;
        }

или в варианте Сергея:

Код:
        private void richTextBox_user_TextChanged(object sender, EventArgs e)
        {
            richTextBox_user.Text = "";
        }

Только не надо говорить, что есть что. Что именно происходит когда вызывается событие TextChanged и что вы предлагаете по этому событию делать. Так что дело совсем не в С#, или его незнании. На любом другом языке эта же самая логика выдаст аналогичный результат.

зы Подсказка, программа работает АБСОЛЮТНО правильно, причём в обоих случаях. Именно так, как вы ей сказали работать.

зы зы Подсказка Nr 2 Когда ещё вызывается TextChanged

зы зы зы Подсказка Nr 3 разрешается пользоваться Breakpoints
« Последнее редактирование: 24-02-2011 20:26 от Джон » Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Сергей
Интересующийся

ua
Offline Offline

« Ответ #3 : 24-02-2011 20:48 » 

Я поспешил с ответом, получилось глупо.
TextChanged - событие которое возникает когда изменяется значение свойства Text поэтому каждый раз когда вводится новое значение (изменяется значение свойства Text) возникает событие TextChanged которое запускает обработчик richTextBox1_TextChanged который  очищает свойства Text. И так каждый раз.
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #4 : 24-02-2011 21:41 » 

Сергей,  5+!

Значит, какое напрашивается решение? Ага
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Gor
Постоялец

ru
Offline Offline

« Ответ #5 : 25-02-2011 10:17 » 

Спасибо господа за участие. А какое напрашивается решение?  Здесь была моя ладья...

Хочется на 5+ написать этот фрагмент кода.
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #6 : 25-02-2011 10:23 » 

Gor, что ты понял из того, что Сергей написал? Почему он назвал своё первое решение глупостью? В крайнем случае ответь на мой #2, это был вопрос к вам обоим. Сергей понял свою ошибку, теперь важно чтобы ты тоже её понял.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines