dwie formy,jedna z watku bocznego, wątkowa nie widzi glównej

0

Chciał bym Otworzyć nową formę w wątku, będzie trzeba wybrać w niej coś

zrobiłem tak ze w głównym wątku umieściłem zmienna z formą i w wątku w którym chce tą formę uruchomić operuje na tej zmiennej, jednak okno wyświetla się tak jakby było zwieszone nic się nie da zrobić na nim

Nie wyskakuje żaden błąd

//EDIT
Mam także drugi problem z tym wątkiem, zrobiłem delegatę na funkcji z głównej formy ale gdy próbuję ja wywołać w tym wątku to dostaje taki błąd :/

user image

Funkcja AddToList:

public delegate void Delegate(string text);
        public void AddToList(string text)
        {
            if (this.InvokeRequired)
                this.Invoke(new Delegate(this.AddToList), text);
            else
                this.Logs.AppendText(text + "\n");
        }

Formę główną przydzieliłem do zmiennej w klasie "Program.cs" czyli tej która uruchamia aplikacje, może znacie jakiś lepszy sposób na to zęby zrobić jakaś zmienna globalna dzięki której bym mógł do tej formy się odwołać bez pisania ciągle "Program.MainForm.AddToList()" tylko np po jej nazwie czyli "Main.AddToList()"

0
  1. masz smietnik w kodzie, albo wlasnie probujesz go sobie zasmiecic. posprzataj/przestan
  2. globalnych uzywa sie w szczegolnych przypadkach, gdyz trzeba ich umiec uzywac z glowa. to nie Twoj przypadek, nie umiesz, probujesz, wiec masz masz problem. zapomnij o globalnych
  3. skoro nie podoba Ci sie odwolywanie sie do miejsca gdzie lezy obiekt po jego dlugiej nazwie, czemu nie skorzystasz z totalnych podstaw jakim jest np. lokalna zmienna lub prywatne pole obietku? odczytaj z "dlugiej nazwy" raz, przechowaj lokalnie, uzywaj lokalnego odniesienia..
  4. do watków mozesz przekazac parametry startowe, ba, obiektowi w ktorym 'wykonuje sie' watek mozesz zawsze poustawiac jakies property przed- a i nawet po- uruchomieniu watku. To jest Twoje rozwiazanie na moje zarzuty z punktów 1) 2) 3) oraz na Twoj problem
0

hmm wiem czym było to spowodowane właściwie można uznać ze pkt 1 z twojej listy, watek poboczny inicjowałem wcześniej niż główną formę i przez to wywalało błąd

1 użytkowników online, w tym zalogowanych: 0, gości: 1