Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
inject
1 / 1 / 2
Регистрация: 03.07.2014
Сообщений: 260
1

Выделение в bb-code текста в TextBox при выборе соответствующего CheckBox

22.08.2014, 18:33. Просмотров 641. Ответов 9
Метки нет (Все метки)

На форме есть 4 чекбокса и 1 текстбокс. Нужно чтобы при чекеде чекбокса текст в текстбоксе выделялся bb-code. К примеру Текст "Я люблю яблоки" после чекеда 1 чекбокса стал "<b>Я люблю яблоки</b>", а если чекнуты 2 чекбокса то "<i><b>Я люблю яблоки</b></i>" Как это можно реализовать ? Желательно результат чтобы был равен какой-нибудь переменной для последующих действий с текстом
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.08.2014, 18:33
Ответы с готовыми решениями:

Изменение видимости TextBox при выборе CheckBox или RadioButton
Всем привет. Нужно сделать так: если выбран чек бокс (или Р.Б) то текст бокс...

Скрытие текста в TextBox при снятии флажка в CheckBox
есть textBox и CheсkBox. как сделать так чтоб при нажатой галочке текст в...

TextBox: выделение текста при щелчке мышью.
Как сделать так, чтобы когда щелкаешь мышью по текстбоксу, текст внутри...

Выделение всего текста в TextBox при клике мышью
Друзья, подскажите пожалуйста как можно реализовать выделение ВСЕГО текста в...

При наведении фокуса на textbox происходит выделение текста
Мне нужно, что чтобы при наведении мышки на текстбокс, на него переводился...

9
Darth Coder
281 / 262 / 107
Регистрация: 10.06.2011
Сообщений: 696
22.08.2014, 19:03 2
C#
1
2
3
4
StringBuilder s = new StringBuilder(textbox1.text);
s.insert(textbox1.SelectionStart,"[b]");
s.insert(textbox1.SelectionStart+textbox1.SelectionLength,"[/b]");
textbox1.text=s.ToString();
Добавлено через 2 минуты
Цитата Сообщение от inject Посмотреть сообщение
<i><b>
так bb-код или html?
1
inject
1 / 1 / 2
Регистрация: 03.07.2014
Сообщений: 260
23.08.2014, 11:27  [ТС] 3
Цитата Сообщение от Darth Coder Посмотреть сообщение
так bb-код или html?
Без разницы ))) И то и то сойдет
C#
1
2
3
4
5
6
7
8
9
 private void button4_Click(object sender, EventArgs e)
        {
            StringBuilder s = new StringBuilder(textBox2.text);
            s.insert(textBox2.SelectionStart,"<b>");
            s.insert(textBox2.SelectionStart + textBox2.SelectionLength, "</b>");
            textBox2.Text = s.ToString();
 
            skype.CurrentUserProfile.RichMoodText = s;
        }
У меня на insert ругается. А как это с чекбоксами использовать ?

Добавлено через 14 часов 49 минут
Help me
0
Darth Coder
281 / 262 / 107
Регистрация: 10.06.2011
Сообщений: 696
23.08.2014, 13:10 4
Лучший ответ Сообщение было отмечено inject как решение

Решение

Цитата Сообщение от inject Посмотреть сообщение
на insert ругается
я код на коленке писал, забыл, что Insert с заглавной
C#
1
2
3
4
5
6
7
8
9
10
private void button1_Click(object sender, EventArgs e)
        {
          if (textBox1.SelectionLength == 0) { MessageBox.Show("Выдели текст!"); }
          else{
          StringBuilder s = new StringBuilder(textBox1.Text);
          if(checkBox1.Checked){ 
              s.Insert(textBox1.SelectionStart,"<b>");
              s.Insert(textBox1.SelectionStart + textBox1.SelectionLength+3, "</b>");}
          textBox1.Text = s.ToString();}
        }
1
inject
1 / 1 / 2
Регистрация: 03.07.2014
Сообщений: 260
23.08.2014, 14:40  [ТС] 5
А как сделать для такого кода ? Как не пробую ругается
C#
1
<a href="http://сайт.ру/">ссылка</a>
0
Nummerok
19 / 19 / 7
Регистрация: 30.05.2014
Сообщений: 431
23.08.2014, 22:14 6
регулярные алгоритмы в помощь
0
Darth Coder
281 / 262 / 107
Регистрация: 10.06.2011
Сообщений: 696
23.08.2014, 23:39 7
попробуй так
C#
1
2
3
4
5
6
7
8
9
10
11
String in="<a href='http://сайт.ру'>";
private void button1_Click(object sender, EventArgs e)
        {
          if (textBox1.SelectionLength == 0) { MessageBox.Show("Выдели текст!"); }
          else{
          StringBuilder s = new StringBuilder(textBox1.Text);
          if(checkBox1.Checked){ 
              s.Insert(textBox1.SelectionStart,in);
              s.Insert(textBox1.SelectionStart + textBox1.SelectionLength+in.Length, "</a>");}
          textBox1.Text = s.ToString();}
        }
1
XRoy
861 / 711 / 305
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
24.08.2014, 00:09 8
inject,
Ничего выделять не надо, меняет все ссылки в строке к виду вашего примера
C#
1
2
3
            string s =@"foo@demo.net    [email]bar.ba@test.co.uk[/email] [url]www.demo.com[/url]    [url]http://foo.co.uk/[/url] [url]http://regexr.com/foo.html?q=bar&ko=mj[/url] [url]http://сайт.ру/[/url] ftp://сайт.ру/";
            string pattern = @"\b(?:(?:ht|f)tps?:\/|www\.)\S+\b";
            var replace = Regex.Replace(s, pattern, match => String.Format(@"<a href=""{0}"">{0}</a>", match.Value));
Добавлено через 2 минуты
Парсер доставил теги, в строке s
1
inject
1 / 1 / 2
Регистрация: 03.07.2014
Сообщений: 260
24.08.2014, 13:16  [ТС] 9
Цитата Сообщение от XRoy Посмотреть сообщение
inject,
Ничего выделять не надо, меняет все ссылки в строке к виду вашего примера
А как его задействовать ? Куда вставить ?
0
inject
1 / 1 / 2
Регистрация: 03.07.2014
Сообщений: 260
25.08.2014, 21:49  [ТС] 10
Help
0
25.08.2014, 21:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.08.2014, 21:49

Обновление состояний checkBox при изменении состояния соответствующего comboBox
Доброго времени суток, возник вопрос: Как при смене значения comboBox изменять...

Как запретить выделение текста в textbox?
захожу на форму по таймеру, и в textbox получается выделен текст, как то...

Автоматическое обновление label при выборе CheckBox
Вот такая ситуация. if (checkbox1.checked==true) label1.Text=&quot;3000&quot;; Можно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru