3Danke
ERLEDIGT
JA
JA
ANTWORTEN
7
7
ZUGRIFFE
593
593
EMPFEHLEN
-
Hallo zusammen,
ich versuche gerade einen Wert aus einer Form an einen Thread übergeben, um den Thread zu beenden. Leider bekomm ich dabei folgende Compilerfehler:
ich vermute, dass der Compiler so reagiert weil bei dem Thread vielleicht noch iwo InvokeRequired auf true gesetzt werden soll.Error 1 'SmartDeviceProject3.Client' does not contain a definition for 'InvokeRequired' and no extension method 'InvokeRequired' accepting a first argument of type 'SmartDeviceProject3.Client' could be found (are you missing a using directive or an assembly reference?)
Error 2 'SmartDeviceProject3.Client' does not contain a definition for 'Invoke' and no extension method 'Invoke' accepting a first argument of type 'SmartDeviceProject3.Client' could be found (are you missing a using directive or an assembly reference?)
Hier ist mein Code:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Form.cs public partial class Form1 : Form { ........ delegate void SetStoppedValueCallback(int value); ....... public void SetStoppedValue(int value) { if (client.InvokeRequired) { SetStoppedValueCallback d = new SetStoppedValueCallback(this.client.setStopped); client.Invoke(d, new object[] { value }); } } } Client.cs public void setStopped(int value) { stopped = value; }
Habt ihr ne Idee wie man das Problem lösen könnte?
Grüße July
-
Hi
Die Fehlermeldung ist eigentlich eindeutig: Client hat weder den Member Invoke noch InvokeRequired!
Die beiden Member werden von der Control-Klasse zur Verfügung gestellt. Ist Client ein Control?Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
schreib in dein Konstuktor nachdem InitializeComponent den Befehl CheckForIlegalCrossCalls=false;
Code :1 2 3 4 5
public Form1() { InitializeComponent(); CheckForIllegalCrossThreadCalls = false; }
dann brauchst dich mit den Invoke usw. nicht mehr rumärgern.
-
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Für Anfänger ist die Methode schon gut. Wobei, wenn man sie kennt überwiegt ganz stark die Faulheit wenn man das nächste mal was mit Threads programmiert
-
Eben! Genau darum sollte man sowas gar nicht erst machen! Wenn man sein Geld damit verdienen will noch weniger!
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
hihi = -h²
-
jep, hab ich verstanden und hab mein Problem jetzt einfacher gelöst, hab die Variable die ich brauche einfach im Thread public gemacht und übergebe in Form ihr einen richtigen Wert. Funktionniert 1A. Und da sie niergendswo anders verwendet wird, kommt zu keinen Konflikten.Hast du deine originale Fehlermeldung inzwischen verstanden und konntest das Problem lösen?
Grüße July
Ähnliche Themen
-
Kommunikation zwischen Thread und Client
Von noxum im Forum JavaAntworten: 3Letzter Beitrag: 14.10.11, 00:20 -
C# Invoke und Thread - ListView wird nicht aktualisiert
Von BitMan im Forum .NET Windows FormsAntworten: 10Letzter Beitrag: 02.06.10, 13:24 -
[richfaces]/[jsf]: Bei action in einer Form auch Daten aus anderer Form übertragen
Von paula123 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 5Letzter Beitrag: 10.03.10, 15:14 -
Kommunikation zwichen Callable und Thread möglich?
Von timd81 im Forum JavaAntworten: 2Letzter Beitrag: 22.10.08, 14:16 -
Thread.Invoke() Call
Von Christian Kusmanow im Forum .NET ArchivAntworten: 2Letzter Beitrag: 08.01.05, 13:36





Zitieren


Login





