Как вызвать уже заполненый, ранее, данными класс
Ситуация:
Есть
Код C#
Код:
public class class1
{
public class class2
{
/*набор полей*/
}
public class class3
{
/*набор полей*/
}
}
{
public class class2
{
/*набор полей*/
}
public class class3
{
/*набор полей*/
}
}
надеюсь на вашу помощь)
Читал в сторону интерфейсов, но либо ничего не понял, либо они мне тут не очень нужны)
Код:
public class Class1
{
public Class2 clas = new Class2();
public Class3 clas1 = new Class3();
public class Class2
{
public string elem { get; set; }
}
public class Class3
{
public string elem2 { get; set; }
}
}
{
public Class2 clas = new Class2();
public Class3 clas1 = new Class3();
public class Class2
{
public string elem { get; set; }
}
public class Class3
{
public string elem2 { get; set; }
}
}
Код:
public partial class Form1 : Form
{
private Class1 clas = null;
public Form1()
{
InitializeComponent();
}
private void InsertForm(object sender, EventArgs e) {
clas = new Class1();
clas.clas.elem = this.textBox1.Text;
clas.clas1.elem2 = this.textBox1.Text;
}
private void ClickBut(object sender, EventArgs e) {
Form2 form = new Form2(clas);
if (form.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
}
}
}
{
private Class1 clas = null;
public Form1()
{
InitializeComponent();
}
private void InsertForm(object sender, EventArgs e) {
clas = new Class1();
clas.clas.elem = this.textBox1.Text;
clas.clas1.elem2 = this.textBox1.Text;
}
private void ClickBut(object sender, EventArgs e) {
Form2 form = new Form2(clas);
if (form.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
}
}
}
Код:
public partial class Form2 : Form
{
private Class1 classs = null;
public Form2(Class1 clas)
{
classs = new Class1();
classs.clas = clas.clas;
classs.clas1 = clas.clas1;
InitializeComponent();
}
private void LoadOn(object sender, EventArgs e) {
this.textBox1.Text = classs.clas.elem;
this.textBox2.Text = classs.clas1.elem2;
}
}
{
private Class1 classs = null;
public Form2(Class1 clas)
{
classs = new Class1();
classs.clas = clas.clas;
classs.clas1 = clas.clas1;
InitializeComponent();
}
private void LoadOn(object sender, EventArgs e) {
this.textBox1.Text = classs.clas.elem;
this.textBox2.Text = classs.clas1.elem2;
}
}
Вам нужно почитать какую-нибудь книжку по основам ООП, чтобы не путаться в терминологии и разобраться что есть что по сути.
Соответственно Вам нужно создать ОБЪЕКТ, заполнив его данными (например в конструкторе), и передать этот объект (это будет переменная типа КЛАСС, или типа указатель на КЛАСС) из одной формы в другую.
А можно немного подробнее, допустим основываясь на моем примере, ато сейчас я совсем запутался(
Код:
public class Class1
{
public Class2 clas {get; set;}
public Class3 clas1 { get; set; }
public class Class2
{
public string elem { get; set; }
}
public class Class3
{
public string elem2 { get; set; }
}
}
{
public Class2 clas {get; set;}
public Class3 clas1 { get; set; }
public class Class2
{
public string elem { get; set; }
}
public class Class3
{
public string elem2 { get; set; }
}
}
Вот допустим: у меня есть класс "Информация", в форме1 я задаю значения полям хранящимся в этом классе. Теперь в форме 2 мне необходимо получить информацию которая храниться в классе "Информация". Экземпляз не подходит, т.к. когда я создаю экхемпляр этого класса, то все поля пустые...
Спасибо, действительно работает, я что-то делаю не так(