Вот как я решил это после борьбы за это.
У меня есть глобальный класс, который я могу использовать во всем проекте
public class GlobalVariables
{
public static Form MainFormO;
}
Я добавил это в основную форму (по умолчанию: Form1)
public MainFrm()
{
InitializeComponent();
GlobalVariables.MainFormO = this;
}
И я пишу этот код в классе, я хочу получить доступ к элементу в MainForm. Вы можете просто изменить Listbox на текстовое поле или что угодно.
GlobalVariables.MainFormO.Invoke((MethodInvoker)delegate
{
ListBox listboxObject= Application.OpenForms["MainFrm"].Controls["listboxid"] as ListBox;
Debug.WriteLine(listboxObject.Items.Add("New Line"));
});