Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# Windows Forms

Войти
Регистрация
Восстановить пароль
 
inject
1 / 1 / 0
Регистрация: 03.07.2014
Сообщений: 257
#1

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

22.08.2014, 18:33. Просмотров 587. Ответов 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
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выделение в bb-code текста в TextBox при выборе соответствующего CheckBox (C#):

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

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

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

.NET 4.x Выделение всего текста в TextBox при клике мышью - C#
Друзья, подскажите пожалуйста как можно реализовать выделение ВСЕГО текста в TextBox'е посредством нажатия на этот текст мышкой? Пробовал...

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

Активация работы ProgressBar при выборе CheckBox - C#
у меня есть 4 checkbox'a, кнопка, прогресс бар и textbox1. Мне нужно чтобы использую конкретное количество checkbox'ов (1,2,3,4) происходил...

9
Darth Coder
279 / 260 / 69
Регистрация: 10.06.2011
Сообщений: 695
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 / 0
Регистрация: 03.07.2014
Сообщений: 257
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
279 / 260 / 69
Регистрация: 10.06.2011
Сообщений: 695
23.08.2014, 13:10 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от 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 / 0
Регистрация: 03.07.2014
Сообщений: 257
23.08.2014, 14:40  [ТС] #5
А как сделать для такого кода ? Как не пробую ругается
C#
1
<a href="http://сайт.ру/">ссылка</a>
0
Nummerok
19 / 19 / 2
Регистрация: 30.05.2014
Сообщений: 431
23.08.2014, 22:14 #6
регулярные алгоритмы в помощь
0
Darth Coder
279 / 260 / 69
Регистрация: 10.06.2011
Сообщений: 695
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
856 / 706 / 217
Регистрация: 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 / 0
Регистрация: 03.07.2014
Сообщений: 257
24.08.2014, 13:16  [ТС] #9
Цитата Сообщение от XRoy Посмотреть сообщение
inject,
Ничего выделять не надо, меняет все ссылки в строке к виду вашего примера
А как его задействовать ? Куда вставить ?
0
inject
1 / 1 / 0
Регистрация: 03.07.2014
Сообщений: 257
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
Привет! Вот еще темы с ответами:

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

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

При выборе определенного элемета в checkbox-е заблокировать все остальные - C#
Добрый день! На форме есть чек бокс, заполняется автоматически из БД. Вопрос в том, как реализовать следующее: При выборе...

Запись в файл текста с определенных textbox, возле которых отмечены CheckBox - C#
Здравствуйте! Есть форма на которой несколько textbox и столько же соответствующих им checkbox. Запись из этих textbox происходит в txt...


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

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

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