Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 17697|Odpowiedź: 0

[Źródło] Operacja cross-thread nieważna: Control 'txtresult' uzyskany z threa...

[Skopiuj link]
Opublikowano 14.12.2015 15:27:31 | | |

Kiedy tworzymy formularz, czasem musimy uzyskać informacje o aktualnym formularzu lub wywołać kontrolki innych formularzy.

Przedstawiam tutaj dwie metody, aby to osiągnąć.


Gdy musimy wywołać kontrolki z innych form w formie, możemy użyć kontroli. CheckForIllegaCrossThreadCalls=false;

Na przykład: Button.CheckForIllegalCrossThreadCalls=false;

Oczywiście możemy też uczynić całą formę wątkiem krzyżowym

Form.CheckForIllegalCrossThreadCalls=false;

Pozwala nam to uzyskać dostęp do kontrolek lub właściwości tej formy w innych formach.

To może nie być najbezpieczniejsza metoda, a czasem debugowanie powoduje błąd.


Tutaj przedstawię kolejną metodę, do której można uzyskać dostęp w różnych wątkach.

Invoke przeskakuje na wątek formularza, aby wykonać funkcję na delegacie


Najpierw musimy ogłosić komisję.

delegate publiczny void DelSetTime(object str);

Następnie musimy przygotować funkcję, którą trzeba wykonać,

public void setTime(object str);

Teraz możemy umieścić delegata na wątku formularza do wykonania

Delegate d=new DelsetTime(setTime);

Dokładnie tak. Invoke(d,Datetime.Now.ToString());

W ten sposób możemy uzyskać dostęp między wątkami.


Każdy formularz ma wątek formularza, który głównie odpowiada za ukończenie rysunku formularza i sterowanie formularzem

Ten wątek nazywamy wątkiem formowym lub głównym wątkiem.

Często musimy dodać wątki do formularza, aby przetwarzać dane, a następnie możemy ustawić te nowo utworzone wątki jako wątki tła, gdy formularz zostanie zamknięty

Wątek też się zakończy.

ThreadStart ths=nowy ThreadStart(Demo);

Wątek th= nowy Wątek(ths);

th. Start();

th. IsBackground=true;


Oryginał: http://bingdao.sinaapp.com/net%E4%BD%93%E7%B3%BB/380.html     






Poprzedni:Wejście dwucyfrowej tablicy znaków jest sortowane w momencie wykonania wyjścia
Następny:【Tutorial z serii programowania na iOS wydany latem】Tutorial na iPhone'a
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com