
Ergebnis 1 bis 4 von 4
-
Bin neu hier
- 09.07.2011, 16:31
- #1
Hallo zusammen,
ich versuche die Sensordaten vom G-Sensor in textboxen auszugeben, jede achse in einer Textbox. Dann bekomme ich beim debuggen den obigen Fehler, bzw: "Invalid cross-thread access". Kann mir jm helfen?
Vielen Dank schonmal, hier mein Code:
Code:using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using Microsoft.Phone.Controls; using Microsoft.Devices.Sensors; using Microsoft.Xna.Framework; namespace sensorlog { public partial class MainPage : PhoneApplicationPage { Accelerometer accelSensor= new Accelerometer(); Vector3 accelReading = new Vector3(); bool accelActive = false; // Konstruktor public MainPage() { accelSensor.ReadingChanged += new EventHandler<AccelerometerReadingEventArgs>(AccelerometerReadingChanged); try { accelSensor.Start(); accelActive = true; } catch (AccelerometerFailedException e) { // the accelerometer couldn't be started. No fun! accelActive = false; } catch (UnauthorizedAccessException e) { // This exception is thrown in the emulator-which doesn't support an accelerometer. accelActive = false; } InitializeComponent(); } public void AccelerometerReadingChanged(object sender, AccelerometerReadingEventArgs e) { if (accelActive) { accelReading.X = (float)e.X; accelReading.Y = (float)e.Y; accelReading.Z = (float)e.Z; xAchse.Text = accelReading.X.ToString(); //xAchse, yAchse und zAchse sind die Textboxen yAchse.Text = accelReading.Y.ToString(); zAchse.Text = accelReading.Z.ToString(); } } } }
-
Fühle mich heimisch
- 09.07.2011, 21:52
- #2
hallo pt254
hast du das Capability ID_CAP_SENSORS vielleicht auskommentiert?(WMAppManifest).
Weil ich hatte auch mal einen Fehler mit dem unauthorized... und stellte dann fest, dass es daran lag, dass ich ein bestimmtes Capability auskommentiert hatte.
Gruss
Cr3dos
-
Bin neu hier
- 11.07.2011, 17:39
- #3
thx erstmal für die schnelle antwort, ich habe leider gestern keine Zeit gefunden um es zu überprüfen.
Ich habe gerade nachgeschaut, aber die Sensor Capibility ist nicht auskommentiert
sonst vielleicht noch jm ne Idee worans liegen könnte?
Der Fehler kommt auch erst beim debuggen, wenn ich obriges ausgeklammert hätte wärs bestimmt schon vorher angezeigt worden
-
Gehöre zum Inventar
- 11.07.2011, 17:56
- #4
Das Event über das geänderte Sensor-Reading wird in einem Hintergrund-Thread ausgelöst. Damit läuft AccelerometerReadingChanged in ebendiesem Hintergrund-Thread und beim Zugriff auf das UI (das im Hauptthread läuft) kommt dann der UnauthorizedAccess.
Du müsstest also in dem EventHandler zuerst mit dem Hauptthread synchronisieren und dann dort die Werte in die Textboxen einsetzen.
Ähnliche Themen
-
SGS - USB Gerät wurde nicht erkannt
Von tom10der im Forum Samsung Galaxy SAntworten: 10Letzter Beitrag: 23.08.2013, 10:54 -
Kalendereintrag wurde nicht synchronisiert
Von Philocyber im Forum Windows Phone 7 AllgemeinAntworten: 0Letzter Beitrag: 21.05.2011, 11:50 -
USB-Gerät wurde nicht erkannt
Von redbull320 im Forum Samsung Galaxy SAntworten: 3Letzter Beitrag: 09.05.2011, 07:36 -
Nachricht wurde nicht gesendet
Von dunkel1337 im Forum Samsung Galaxy SAntworten: 0Letzter Beitrag: 19.09.2010, 10:24 -
Facebook läuft im Hintergrund obwohl es nicht gestartet wurde
Von quase im Forum HTC Desire KommunikationAntworten: 4Letzter Beitrag: 29.08.2010, 09:35
Pixel 10 Serie mit Problemen:...