Для того чтобы обратиться к экземпляру класса, объявленному на другой форме в языке программирования C#, можно воспользоваться несколькими способами, в зависимости от архитектуры вашего приложения.
Первый способ - использование свойств и методов. Если экземпляр класса, к которому вы хотите обратиться, находится на другой форме, вы можете добавить в эту форму публичное свойство в котором будет храниться экземпляр класса. Например, предположим, у вас есть класс "MyClass" и форма "Form1", а на форме "Form2" у вас есть экземпляр класса "MyClass":
public class MyClass { // Код класса MyClass } public partial class Form2 : Form { public MyClass MyClassInstance { get; set; } // Код формы Form2 }
Теперь вы можете получить доступ к экземпляру класса "MyClass" на форме "Form2" из формы "Form1" следующим образом:
public partial class Form1 : Form { private Form2 _form2; public Form1() { InitializeComponent(); _form2 = new Form2(); _form2.MyClassInstance = new MyClass(); } // Код формы Form1 }
Теперь у вас есть доступ к экземпляру класса "MyClass" на форме "Form2" из формы "Form1" через свойство "MyClassInstance" объекта "_form2".
Второй способ - передача экземпляра класса через конструктор формы. В этом случае вы можете создать конструктор для формы "Form2", который принимает экземпляр класса "MyClass":
public partial class Form2 : Form { private MyClass _myClassInstance; public Form2(MyClass myClassInstance) { InitializeComponent(); _myClassInstance = myClassInstance; } // Код формы Form2 }
Теперь вы можете передать экземпляр класса "MyClass" при создании объекта формы "Form2":
public partial class Form1 : Form { private Form2 _form2; public Form1() { InitializeComponent(); _form2 = new Form2(new MyClass()); } // Код формы Form1 }
Теперь у вас есть доступ к экземпляру класса "MyClass" на форме "Form2" из формы "Form1" через переменную "_myClassInstance" на форме "Form2".
Третий способ - использование статических переменных. Если вам необходимо получить доступ к экземпляру класса "MyClass" из разных форм, вы можете объявить статическую переменную в классе "MyClass" и использовать ее для доступа к экземпляру класса в разных формах:
public class MyClass { public static MyClass Instance { get; } = new MyClass(); // Код класса MyClass }
Теперь вы можете получить доступ к экземпляру класса "MyClass" в любой форме следующим образом:
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void SomeMethod() { MyClass myClassInstance = MyClass.Instance; // Используйте экземпляр класса "MyClass" по вашему усмотрению } // Код формы Form1 }
Теперь у вас есть доступ к экземпляру класса "MyClass" из любой формы, используя статическую переменную "Instance".