2011-01-24 9 views
2

버튼이있는 양식이 있는데, 클릭하면 대화 상자 양식이 나타납니다. 이 대화 상자에서 사용자는 일부 데이터를 선택해야하며 사용자가 완료되면 OK 버튼을 누릅니다. 확인 버튼을 클릭하면 정수를 이전 양식으로 되돌려 보내야합니다. VB.NET 양식간에 데이터 전달하기

가 나는 대화 양식을 만들고 아래의 코드를 통해 호출 시도 : 그러나

Dim intResult as Integer = frmData.ShowDialog() 

Debug.Writeline(intResult) 

, 내가 단지 DialogResults을 (중단이 ... 무시 취소)

I이었다 반환 할 수 있습니다 보인다 공개 변수를 만들고 거기에 결과를 저장하지 않고도이 문제를 어떻게 해결할 수 있는지 궁금합니다.

답변

4

값을 반환하는 대화 상자에서 속성을 만듭니다.

If frmData.ShowDialog() Is Not DialogResult.Cancel 
    Dim value as integer = frmData.MyProperty 
    ... 
Endif 
2

대화 상자 양식에 이벤트를 작성하고 기본 양식에 등록한 후 이벤트 인수에 포함 된 해당 데이터로 대화 상자에 이벤트를 올리십시오.

1

프로젝트에 cutom 대화 상자를 추가하십시오 (/ new 요소/Windows Forms/Dialog 추가). 그런 다음 인스턴스를 만들고 showDialog를 호출하고 해당 DialogResult가 Windows.Forms.DialogResult.Ok인지 확인하십시오. 모든 컨트롤에 액세스 할 수 있습니다 (예 :

Dim d As New Dialog1 
Dim result As DialogResult = d.ShowDialog(Me) 
If result = Windows.Forms.DialogResult.OK Then 
    Dim selectedText As String = d.ComboBox1.SelectedText 
End If 
)
관련 문제