본문 바로가기

Project/SMI

[C#] 메인폼 객체를 다른 생성된 폼에서 사용할 경우



[부모 폼]

namespace MedicalInformation
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form2 f2 = new Form2(this); //현재 폼의 객체 this를 생성된 폼의 생성자에 넘긴다.
            f2.Show();   
        }
        public string GetName()
        {
            return textBox1.Text;
        }
        public string GetAge()
        {
            return textBox2.Text;
        }
    }
}






[생성된 폼]

namespace MedicalInformation
{
    public partial class Form2 : Form
    {
        Form1 f1 = new Form1(); // 또는 Form1 f1 = null; 로 선언해도 무관
        public Form2()
        {
            InitializeComponent();
        }
        public Form2(Form1 _f1)
        {
            this.f1 = _f1; // 넘겨받은 Form1의 객체를 현재의 Form1의 객체에 대입
            InitializeComponent();
            FormSettingProc(); //InitializeComponent() 실행 후 폼의 셋팅이 완료됬으므로 f1객체 사용 가능
        }
        public void FormSettingProc()
        {
            string temp = f1.GetAge(); //Main폼에 있는 GetAge()함수를 사용할 수 있다.
            label1.Text = temp;
        }
    }
}

'Project > SMI' 카테고리의 다른 글

SMI (WindowMobile Programming)  (0) 2010.12.06
[C#] DateTime을 이용한 알람 설정  (0) 2010.12.06
[C#] String속성 : LastIndexOf  (0) 2010.12.04
[C#] Window Mobile 강제로 Explorer 실행하기  (0) 2010.12.04
[C#] Enum 사용  (0) 2010.12.02