2016-07-24 6 views
0

У меня возникла проблема с Clipboard и listBox. Вот что мой перевод из буфера обмена в ListBox код выглядит следующим образом:Вставка текста в списке позволяет создать 1 элемент, хотя это не

string s = Clipboard.GetText(); 
string[] lines = s.Split('\n'); 
foreach (string ln in lines) 
{ 
    listBox1.Items.Add(ln.Trim()); 
} 

Это работает прекрасно и делает работу. Но проблема в том, что если я не копирую текст из Excel или Word или какой-либо другой текстовый редактор (я копирую его из другого приложения, которое отображает текст в строках), оно не отображает все элементы на отдельной строке , Если я скопирую текст назад, он отобразит новые строки правильно. Это действительно меня беспокоит, поэтому мой вопрос: можете ли вы предложить другой способ вставить текст в listBox?

+0

Вы пытались проверить строку, используя отладчик и проверить, что это действительно новый разветвитель в случае (копирование с * других приложений *) – user3185569

ответ

0

Новая строка не всегда отображается как «\ n». Чтобы преодолеть это, используйте:

.Split(new string[] { "\n", "\r\n" }, StringSplitOptions.None) 
+0

Спасибо за быстрый ответ , Я просто попробовал это, но, к сожалению, он все еще показывает все предметы на 1 строке. На самом деле проблема не логична, все идет как отдельный элемент, на отдельной строке, но просто показывает это в 1 строке. Еще раз спасибо! –

+0

Здравствуйте, еще раз, я добавил «\ r» в качестве другого разделителя, и он сработал. Большое спасибо за идею! :) –

+0

Чтобы избежать этого, я всегда начинаю с замены как '\ r \ n', так и' \ r' на '\ n', а затем просто разбивается на' \ n' в одиночку. – Nyerguds

 Смежные вопросы

  • Нет связанных вопросов^_^