Originariamente inviato da generalekamikaz
Quindi praticamente.
Devo costruire un unica istanza della Form.
Il costruttore deve rimanere vuoto. Giusto?
mi potresti spiegare il perchè di questo :

codice:
*************** 
//con questo vorresti che ti cambiasse la musichetta (o la grafica...) del form ogni 50 secondi?
 while (countLines(pathSurevy) > 0)

      {
        Thread threadForm = new Thread(new ThreadStart(RunStart));
        threadForm.Start();
        Thread.Sleep(50000);
      }
    }
***********************
    public static Interface makeInterface()
    {
      string relativePath = subPathSurvey + nameSurveyFile;
      string survey = extractLine(relativePath, new object(), new EventArgs());
      if (survey != null)
      {
***************
//questo esattamente cosa fa? c'è un motivo in particolare perchè fai restituire un form dal metodo .receiveSurvey(survey)?
        LogicaDiSistema logicSystem = new LogicaDiSistema();
        return logicSystem.receiveSurvey(survey);
****************
//presumo che anzichè farti restituire un form nuovo debba modificare quello già esistente (che avvii con application.run)
      }
      else
      {
        return new Interface(null);
      }
    }
poi perchè non fai tutto dentro il form che crei anzichè utilizzare la program? secondo me lavoreresti meglio.