+ Rispondi
Risultati da 1 a 3 su 3
  1. #1

    Iscritto dal
    04/09/2011
    Messaggi
    5,374

    C# !$$%arght (visibilitÓ controlli da thread non proprietari?)

    problema molto semplice:

    in c# utilizzando sharpcompiler 4.4 voglio che un metodo (?) possa agire su un controllo presente nella form principale
    per essere precisi voglio che questo evento che viene generato da una porta serialport quando Ŕ presente almeno un carattere ricevuto possa cambiarmi il .text di un controllo

    private static void port_OnReceiveData(object sender, SerialDataReceivedEventArgs e)
    {
    ..
    textBox_log.Text = "parsed";
    ..
    }


    e non compila per questo errore "Occorre un riferimento a un oggetto per la proprietÓ, il metodo o il campo non statico 'COM_app.MainForm.textBox_log' (CS0120) - C:\Users\Anto\Desktop\sharpSolutions\COM app\COM app\MainForm.cs:147,7" su textBox_log


    perdendoci 2 giorni ho scoperto che Ŕ una cosa voluta per evitare che un thread possa agire in maniera non safe su un oggetto di cui non Ŕ proprietario, e ovviamente non ho idea di cosa voglia dire.
    Ho provato anche tutti gli esempi su stackoverflow e su msdn ma non ce ne vengo a capo, nemmeno cercando di utilizzare invoker di vario tipo, se per caso riesco ad ottenere qualcosa di compilabile poi mi becco un bell'errore in runtime quando faccio girare il programma

    halp

    PS: fare il programmatore C# non Ŕ il mio lavoro ma mi serve per interfacciarmi con una scheda elettronica

  2. #2

    Iscritto dal
    04/09/2011
    Messaggi
    5,374
    ok, apparentemente bastava togliere static e accedere al controllo tramite invoke

    non so cosa significhi, ma ora ricevo e parso i dati

  3. #3

    Iscritto dal
    13/12/2011
    LocalitÓ
    Salento!
    Messaggi
    6,762
    Quote Originariamente inviato da Beppe82 Visualizza il messaggio
    ok, apparentemente bastava togliere static e accedere al controllo tramite invoke

    non so cosa significhi, ma ora ricevo e parso i dati
    Scusa, ho visto solo ora. Ti stavo per dire invoke

    Inviato dal mio LG-H815 utilizzando Tapatalk


 

Autorizzazioni

  • Non puoi iniziare nuove discussioni
  • Non puoi rispondere alle discussioni
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
Powered by vBulletin™ Version 4.1.5
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved
SEO by vBSEO ©2011, Crawlability, Inc.
Fuso orario: UTC +1, sono le 09:11.