Перейти к содержанию

С# и много инфы......


kimster

Рекомендуемые сообщения

Здраствуйте!Не подскажете как сделать чтобы при выводе боьшоо количества информации форма (окно), textbox, listbox не висели до тех пор пока не закончит действие программа. Не обязательно texbox или listbox, если есть др варианты быстрого вывода инфы без подвисания....плиз помогите=)

Ссылка на комментарий
Поделиться на другие сайты

Привет.

Если действительно подвисает, можно попробывать с помощью backgroundWorker-а порциями выкладывать данные на форму (неважно в какой элемент управления).

Ссылка на комментарий
Поделиться на другие сайты

СПС.Попробую.....а что по идее не должно подвисать если допустим 10000 строк надо выводить.....и что еще плохо....скролинг не работает тк форма висит до тех пор пока все не выполнит((......какие нибудь по быстрее есть поля для вывода??........

Ссылка на комментарий
Поделиться на другие сайты

А зачем именно в TextBox то? Для больших текстов лучше брать TextArea, либо Label. Так же можно(как предлагалось ранее) добавлять текст в отдельном потоке, или же сначала добваить весь текст а потом показывать компонент.

Ссылка на комментарий
Поделиться на другие сайты

НУ сторока примерно такая: textbox.text+="1. Время Заголовок Размер Тип"+\р\н; .......и таких много строк.......думал разбить по листбоксам......но ситуация такая же....Вить, мне интерактив нужен......появилась строка->выделить ее-?скопировать итд.....получается надо чтоб вывод был в одном потоке а другие операции в другом??

Ссылка на комментарий
Поделиться на другие сайты

Для начала попробуй не таскать за собой кучу строк, их копирование, перемещение, сборку мусора и многое друге. Используй textbox.apped вместо textbox.text+=.

И можно узнать что в итоге должно быть? Может быть есть какойнить метод по проще, где таких проблем нет.

Ссылка на комментарий
Поделиться на другие сайты

public void SetText(string text)

{

if (textbox1.InvokeRequired)

{

textbox1.Invoke(new SetTextCallback(SetText), text);

}

else

{

textbox1.Text += text;

textbox1.Refresh();

}

}

вот так пока что решил проблему......

Ссылка на комментарий
Поделиться на другие сайты

еще 1 маленький воспрос..............как сделать чтоб в текстбоксе не было автоскроллинга......при выводе новых значений он все время возвращается к началу....а мне бы покрутить скроллбар, чтоб любойэлемент посмотреть можно было....

Ссылка на комментарий
Поделиться на другие сайты

Заархивировано

Эта тема находится в архиве и закрыта для дальнейших ответов.

×
×
  • Создать...