У меня есть большая проблема, и надеюсь, что вы, ребята, можете помочь мне ...текст Изменение этикетки и начать темы, в том же ничтожной
мне нужно, чтобы начать Thread
не называется ListenOnSocket
, никаких проблем до сих пор ..
Thread ListenOnSocket = new Thread(newThreadStart(Form1.ListenOnSocket));
ListenOnSocket.Start();
Но когда я хочу изменить метку в пределах ListenOnSocket
, я получаю ссылку на объект, которая требуется для нестатического поля, метода или свойства.
Так обычно вы PASSE этикетку на делая это
public static void ListenOnSocket(Label lblstatus)
{
//i want to change the label from here.
lblstatus.text = "Hello";
}
, но затем я получаю
No overload for ListenOnSocket matches delegate System.Threading.Threadstart in my threadstart.
Может кто-нибудь, пожалуйста, помогите, я действительно застрял, извините, если не так много Продолжайте, я новичок в C#.
Даже если вы исправите ошибку компилятора, это не сработает. Ваш следующий вопрос: я получаю [Исключение перекрестных потоков] (http://stackoverflow.com/questions/10775367/cross-thread-operation-not-valid-control-textbox1-accessed-from-a-thread-othe). Поэтому я не собираюсь исправлять это; Я рекомендую взять книгу и прочитать. Вы никогда не пожалеете. Подсказка, фиксирующая эту ошибку компилятора: Используйте выражение лямбда. –