Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как менять цвет текста в RichTextBox? 
:(
    Опции темы
Riccon
Дата 8.7.2006, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 5.5.2004

Репутация: нет
Всего: нет



Проблемпа такая. В RichTextBox динамически поступают данные из xml-файла.
Нужно установить отдельный цвет для заголовка и отдельный для описаия. Как этого можно добиться?  

Это сообщение отредактировал(а) Riccon - 8.7.2006, 15:42
PM MAIL   Вверх
Tror
Дата 10.7.2006, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 29.4.2005
Где: Кишинёв

Репутация: 2
Всего: 4



может я что-то не так понял, но по моему

Код

richTextBox1.SelectionColor = Color.Red;
 
--------------------
Не говори всегда что знаешь, но знай всегда что говоришь. /Клавдий/============================================Кто может -- тот делает. Кто не может... тот получает сертификат MCSE ;)
PM MAIL ICQ   Вверх
Riccon
Дата 10.7.2006, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 5.5.2004

Репутация: нет
Всего: нет



Кароче, вот так получилось smile Пасиба.
Код

RTB.SelectedText += myText;
RTB.Select(richTextBox1.Text.Length - myText.Length, myText.Length);
RTB.SelectionColor = Color.Red; 
 
PM MAIL   Вверх
Killerman
Дата 14.2.2008, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 26.10.2007

Репутация: нет
Всего: нет



А как отменить селекшн? мне нада чтобы было так:
Name1 - красный цвет, information1 - черный, потом Name2 - красный, information2 - черный и т.д.

Данные в ричтекстбокс подаются последовательно:
Name1 information1 Name2 information2...............

Данные добавляются кнопкой и вызывают срабатывание функции
Я делал так:

Код

void function()
{
    string name = "";

name = GetName(Name_textBox.Text)+": \n"; // В неймтекстбокс вводятся имена Name1,Name2........


         richTextBox1.Text += name;
         richTextBox1.Select((richTextBox1.Text.Length - name.Length), richTextBox1.Text.Length);
         richTextBox1.SelectionColor = Color.Red;
       
       
     /// а здесь я так понял возникает проблема:
  
         richTextBox1.Text +=informationTextBox.Text; 
}



В результате Имя становиться красным, но и весь последующий текст тоже красный.
Я так понял при добавлении строки из informationTextBox цвет не изменяется? или этот текст тоже выбирается и становиться красным при следующем обращении.

Как решить эту проблему? и как отменить селекшн  текста, который выбран?  smile 


Это сообщение отредактировал(а) Killerman - 15.2.2008, 23:20
PM MAIL   Вверх
Killerman
Дата 15.2.2008, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 26.10.2007

Репутация: нет
Всего: нет



что, никто не знает?  smile 
PM MAIL   Вверх
Crimp
Дата 16.2.2008, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 21.10.2007
Где: Tula

Репутация: нет
Всего: 2



Так как стандартный контролл, то реализованно там всё просто, и при вставке нового текста ты получаеш новый string. Цвета не запоминаются. (Состаяния не сохраняются). Сам контроллер ведёт себя не предсказуемо(если можно так выразица), работает не так как ты ожидаеш smile
Вот посмотри и запусти, должен понять smile
Код

public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }
        Color[] colors = new Color[] {Color.Red, Color.DarkGray, Color.Yellow };
        private void Form1_Load(object sender, EventArgs e) {
            for (int x = 0; x < 5; x++) {
                AddColoredText("Name" + x.ToString(), colors[0]);
                AddColoredText(" XXXX " + x.ToString(), colors[2]);
                AddColoredText(" informations" + x.ToString() + "\n", colors[1]);
            }

        }

        private void AddColoredText(string text, Color color) {
            this.richTextBox1.Select(0, 0);
            int startPosition = this.richTextBox1.Text.Length;
            this.richTextBox1.Text += text;
            this.richTextBox1.Select(startPosition, text.Length);
            this.richTextBox1.SelectionColor = color;
            this.richTextBox1.Select(0, 0);

        }

    }

PM MAIL ICQ   Вверх
error
Дата 16.2.2008, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.1.2006

Репутация: нет
Всего: нет



Цитата(Killerman @ 14.2.2008,  21:44)
Как решить эту проблему? и как отменить селекшн  текста, который выбран?  smile

Код

RichTextBox.SelectionLength=0;

PM MAIL   Вверх
Crimp
Дата 17.2.2008, 01:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 21.10.2007
Где: Tula

Репутация: нет
Всего: 2



Повторюсь, сброс Selrction не решит поставленной проблемы, так как сам RichTextBox в данном случае не подходит. (Без большого секса)
PM MAIL ICQ   Вверх
Ganiomb
Дата 19.10.2022, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 19.10.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.1484 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.