Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
#1

Извлечение текста с tooltip.Content

13.09.2011, 23:46. Просмотров 1854. Ответов 21
Метки нет (Все метки)

При запуске программы считываются данные с текстового файла, и к каждым данным там же в строке есть поле tooltip, так вот, когда там добавить /n, то все считывается и отображается в tooltip нормально, с переносами, а вот при чтении с tooltip.Content и записи обратно в файл этот перенос вытекает в то, что получаю на выходе две строки, а не одну с символом переноса. Ну вот как то так получается
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2011, 23:46
Ответы с готовыми решениями:

ToolTip.Show()
Всем привет. Проблема у меня такая: создал я свой Control, кинул его на...

Позиционирование ToolTip
Добрый день, есть тултип со стрелкой сбоку, необходимо эту стрелку...

ToolTip и его перевоплощения
Доброго времени суток, вопрос крайне простой, но именно такой информациия не...

Отображение ошибок в ToolTip
Доброго времени суток всем, задача, есть датагрид в который юзер вводит...

Изменение вида ToolTip
Столкнулся с проблемой. ToolTip имеет что-то вроде градиента и этот градиент...

21
al.k
14.09.2011, 14:49
  #2

Не по теме:


вы промтом переводили, я ни че не понял

0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
14.09.2011, 15:34  [ТС] #3
Ну вообще то ничего я не переводил, прост засиделся и писал немного сонный вчера)
А так сформулирую вопрос по другому:
как можно убрать переносы при считывании текста из tooltip и заменить эти переносы на какой-то символ?
0
al.k
99 / 84 / 6
Регистрация: 08.04.2010
Сообщений: 169
14.09.2011, 15:49 #4
если вам в тексте удалить переносы строк, то может быть вот так

C#
1
myString = myString.Replace(Environment.NewLine, "replacement text")
1
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 11:59  [ТС] #5
Цитата Сообщение от al.k Посмотреть сообщение
если вам в тексте удалить переносы строк, то может быть вот так

C#
1
myString = myString.Replace(Environment.NewLine, "replacement text")
Все таки не помогло...
0
al.k
99 / 84 / 6
Регистрация: 08.04.2010
Сообщений: 169
18.09.2011, 14:40 #6
код давайте
0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 15:13  [ТС] #7
C#
1
2
3
Tooltip t=new Tooltip();
t.Content="asdasdas\nasdad";
String s=t.Content.Replace(Environment.NewLine, "\n")
При выводе строки в файл через StreamWriter.WriteLine получаю в файле две строки вместо одной.
0
al.k
99 / 84 / 6
Регистрация: 08.04.2010
Сообщений: 169
18.09.2011, 16:01 #8
а так?
C#
1
String s=t.Content.Replace("\n, " ");
0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 16:16  [ТС] #9
С этого начинал... не хочет...
0
al.k
99 / 84 / 6
Регистрация: 08.04.2010
Сообщений: 169
18.09.2011, 16:39 #10
t.Content это вообще не стринг, не понимаю как у вас код который вы привели вообще компилился без ошибок

ToolTip надо, а не Tooltip

C#
1
  String s = ((string)t.Content).Replace("\n", " ");
0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 16:56  [ТС] #11
Ну у меня не в tooltip дело, а все дело в том, что есть просто строка, в которой хочу убрать переносы, заменив их другими символами... В ToolTip передается ссылка на строку,с которой я вот работаю, поэтому там ошибки и не было при компиляции.
0
NightEagle
1 / 1 / 0
Регистрация: 01.03.2010
Сообщений: 26
18.09.2011, 17:14 #12
А если при сохранении заменить \n на какой-нибудь набор символов ($newLine), а при загрузке наоборот заменять все $newLine на \n ?
0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 17:22  [ТС] #13
Вот это я уже пробывал...
Игнорируется символ \n при замене...
0
NightEagle
1 / 1 / 0
Регистрация: 01.03.2010
Сообщений: 26
18.09.2011, 17:49 #14
не знаю что у тебя игнорируется.. у меня всё работает:

C#
1
2
3
4
5
6
7
8
9
10
            string str = "sdfsdf\nsdf";
            string str2 = "";
            int pos;
            string repl = "$newLine";
            while ((pos = str.IndexOf('\n')) != -1)
            {
                str2 += str.Substring(0, pos)+ repl;
                str = str.Substring(pos + 1);
            }
            str2 += str;
0
al.k
99 / 84 / 6
Регистрация: 08.04.2010
Сообщений: 169
18.09.2011, 18:08 #15
да зачем такие сложности обычный Replace работает, проверено на коде который автор приводил в начале темы. Другой вопрос, что автор не весь код показывает, ту часть где сохранение в файл происходит, а без кода это все гадание на кофейной гуще.

Добавлено через 13 минут
да и еще в Window NewLine == "\n\r", кажется так
0
NightEagle
1 / 1 / 0
Регистрация: 01.03.2010
Сообщений: 26
18.09.2011, 18:18 #16
Цитата Сообщение от al.k Посмотреть сообщение
"\n\r"
если уж на то пошло, то наоборот - "\r\n". Сохранение в файл и я опустил, т.к. оно ни на что не влияет. Насколько я понял, запись идёт через WriteLine, а он просто принимает строку и всё. И читает также - построчно.

А если прочитать внимательно пост #13, то станет понятно что у ТС проблема в том что
Цитата Сообщение от SkarM Посмотреть сообщение
Игнорируется символ \n при замене...
0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 18:35  [ТС] #17
Цитата Сообщение от NightEagle Посмотреть сообщение
если уж на то пошло, то наоборот - "\r\n". Сохранение в файл и я опустил, т.к. оно ни на что не влияет. Насколько я понял, запись идёт через WriteLine, а он просто принимает строку и всё. И читает также - построчно.

А если прочитать внимательно пост #13, то станет понятно что у ТС проблема в том что
Все верно, кроме- вообщет \r- это символ возврата коретки, только каким он тут боком??
0
al.k
99 / 84 / 6
Регистрация: 08.04.2010
Сообщений: 169
18.09.2011, 18:44 #18
просто не ясно

При выводе строки в файл через StreamWriter.WriteLine получаю в файле две строки вместо одной.
или

Игнорируется символ \n при замене...
в чем проблема ?
0
NightEagle
1 / 1 / 0
Регистрация: 01.03.2010
Сообщений: 26
18.09.2011, 18:50 #19
без "или"

Если '\n' игнорируется, то в файл будет действительно записано 2 строки.

SkarM, напиши тот код, что я тебе скинул и радуйся жизни. Или сделай это через Replace:
C#
1
2
3
            string str = "sdfsdf\nsdf";
            string repl = "$newLine";
            str = str.Replace("\n", repl);
0
SkarM
7 / 7 / 3
Регистрация: 28.10.2010
Сообщений: 220
18.09.2011, 19:47  [ТС] #20
Повторяю- через Replace WriteLine записывает две строки. А предыдущий код испытаю чуть позже, т.к. сейчас другим занят.
0
18.09.2011, 19:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.09.2011, 19:47

Изменять текст в Tooltip
Необходимо, чтобы по даблклику на некоторые элементы выводился бы контрол,...

Background -> ToolTip Fuction
Здравствуйте, Столкнулся с проблемой отображения изображения в Background_е,...

Время отображения ToolTip
Здравствуйте! Не подскажите как оргизовать, что бы всплывающее окно (ToolTip)...


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

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

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