Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Считать и записать в TextBox Добавлено: 12.05.11 21:29  

Автор вопроса:  Lola
Здравствуйте, помогите, пожалуйста,
Как считать и записать информацию из одного TextBox'а в другой с помощью Streamreader, Streamwriter, Binaryreader, Bynarywriter, желательно код. Спасибо)

Ответить

  Ответы Всего ответов: 10  

Номер ответа: 1
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #1 Добавлено: 13.05.11 00:08
Streamreader, Streamwriter, Binaryreader, Bynarywriter

Эээмм.. позвольте поинтересоваться вы вообще в курсе что означают эти слова?
Если перевести ваш вопрос на обычный язык, то я бы перевел следующим образом:
Как перенести домашние тапочки из одной комнаты в другую с помощью линкора,авианосца и паровоза?

Ответить

Номер ответа: 2
Автор ответа:
 Animan



ICQ: 450878342 

Вопросов: 2
Ответов: 3
 Web-сайт: vkontakte.ru/animan2010
 Профиль | | #2
Добавлено: 07.06.11 11:24
=D
Textbox2.text = textbox1.text можно попробовать))

Ответить

Номер ответа: 3
Автор ответа:
 tekora



Вопросов: 1
Ответов: 6
 Web-сайт: tekora.ks8.ru
 Профиль | | #3
Добавлено: 07.06.11 14:10
Не хотелось создавать новую тему. У меня вот такой вопрос, как записать в TextBox из другого потока.
  1. private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             Thread ServerOutput = new Thread(new ThreadStart(outputDisplay));
  4.             ServerOutput.IsBackground = true;
  5.             ServerOutput.Start();
  6.         }
  7.         private void outputDisplay()
  8.         {
  9.             bool connection = true;
  10.             while (connection == true)
  11.             {
  12.                 textBoxOutput.AppendText("строка вывода" + Environment.NewLine);
  13.                 if (textBoxOutput.TextLength == 200)
  14.                 {
  15.                     connection = false;
  16.                 }
  17.             }
Ошибка
Недопустимая операция в нескольких потоках: попытка доступа к элементу управления 'textBoxOutput' не из того потока, в котором он был создан.

Ответить

Номер ответа: 4
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #4 Добавлено: 07.06.11 14:57
используй Invoke

Ответить

Номер ответа: 5
Автор ответа:
 tekora



Вопросов: 1
Ответов: 6
 Web-сайт: tekora.ks8.ru
 Профиль | | #5
Добавлено: 07.06.11 17:22
а как? код, плиз.

Ответить

Номер ответа: 6
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #6 Добавлено: 08.06.11 12:00
Вместо
  1. textBoxOutput.AppendText("строка вывода" + Environment.NewLine);

написать что-то вроде

  1. this.Invoke(new Action(()=> textBoxOutput.AppendText("строка вывода" + Environment.NewLine)));

Ответить

Номер ответа: 7
Автор ответа:
 tekora



Вопросов: 1
Ответов: 6
 Web-сайт: tekora.ks8.ru
 Профиль | | #7
Добавлено: 08.06.11 20:05
Ok. Все заработало. Урря! а как же быть со свойством textBoxOutput.TextLength < 200.Опять же туже ошибку выдает. Ошибка
Недопустимая операция в нескольких потоках: попытка доступа к элементу управления 'textBoxOutput' не из того потока, в котором он был создан.

Я так понял, что с помощью Invoke только к методам доступ можно получить.

Ответить

Номер ответа: 8
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #8 Добавлено: 08.06.11 22:59
Попробуй как-то так

  1. if ((int)this.Invoke(new Func<int>(()=> textBoxOutput.TextLength)) == 200)
  2. {
  3.     connection=false;
  4. }

Ответить

Номер ответа: 9
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #9 Добавлено: 08.06.11 23:19
может, попробовать как то так?
  1. this.Invoke(delegate {
  2.     ...
  3.     //'Any code
  4. });

Ответить

Номер ответа: 10
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #10 Добавлено: 09.06.11 11:14
И форма будет висеть пока не выполнится цикл

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам