당신은 단지 만들어야합니다 CurrentWorld
public
또는 internal
에 MainForm
수업. 솔직히, 당신은 다른 모든 일을 제대로하고 있습니다!
업데이트: 또한 MainForm
개인 필드가 선언되었습니다 Form1
유형입니다 MainForm
그리고 단지 Form
. 따라서 생성자 A Tidge도 변경하십시오.
public ProjectWizard(MainForm form)
문제
프로젝트가 있는데, 프로젝트를 만들기 위해 마법사 양식이 호출됩니다. 마법사 끝에 나는 '세계'객체를 기본 형식의 변수로 다시 보내고 싶습니다. 그러나 제작자를 통해 메인 양식을 제공하면 메소드 나 속성에 액세스 할 수 없습니다. 내가 뭔가 잘못하고 있습니까?
내 코드는 다음과 같습니다.
주요 형태
private void newToolStripMenuItem_Click(object sender, EventArgs e)
{
this.NewProject();
}
private void NewProject()
{
var myForm = new ProjectWizard(this);
myForm.Show();
}
마법사 양식 코드 :
public ProjectWizard(Form form)
{
InitializeComponent();
MainForm = form;
}
private void finishButton_Click(object sender, EventArgs e)
{
//World world = new World();
//MainForm.CurrentWorld = world;
}
미리 감사드립니다.
해결책
당신은 단지 만들어야합니다 CurrentWorld
public
또는 internal
에 MainForm
수업. 솔직히, 당신은 다른 모든 일을 제대로하고 있습니다!
업데이트: 또한 MainForm
개인 필드가 선언되었습니다 Form1
유형입니다 MainForm
그리고 단지 Form
. 따라서 생성자 A Tidge도 변경하십시오.
public ProjectWizard(MainForm form)