아래의 2개의 클래스로 이루어진 프로그램이 있음.
1. Form1.cs (윈도우즈 폼)
2. Class1.cs (내가 만든 임의의 폼)
Form1.cs 엔 Textbox1 이란 이름의 텍스트박스가 한개 있음
Class1.cs에서
public void func(Form form2) {
string txt = form1.Textbox1.text;
...
}
이런 식으로 폼1에 있는 텍스트 박스를 불러오고 싶은데 이게 안되서
public void func(String txt) {
string plain = txt;
...
}
이렇게 함수를 만들고, form1.cs에서 Class1.func(Textbox.text) 이런 식으로 입력하고 있음.
컴알못이라서 Form1 객체를 인풋했는데 그 하위에 있는 다른 놈들이 왜 로딩이 안되는건지 모르겠음..
지금 드는 생각은
0. Form 객체의 원형에는 Textbox가 원래 없다.
1. Textbox1 객체는 특정한 객체(form1)에 있는 놈이다.
2. Class1.func()에서 선언된 Form form2는 form1과 관련 없는 놈이다.
3. 따라서 지역변수처럼 생성된 form2는 당연히 Textbox1을 가지고 있지 않다.
이런 생각이 드는데 이게 맞는지 아닌지 모르겠음.
아니 그냥 너가 form1 인스턴스를 class1로 제대로 못전달해준거임.
어떻게 해야 제대로 전달해줄 수 있음요?
헐 ... Form1.Designer.cs 잴 밑에 Textbox나 이런 것들이 private로 선언되어 있었던 것 뿐이었네여 ...;;;;
캄사 ㅠ.ㅠ 컴알못이라 Form1.Designer.cs 이런 것도 처음 봤음요 ㅠㅠ