2014-03-27 3 views
1

최선을 다해 설명 드리겠습니다. SQL에서 데이터를 가져 와서 DataGrid에로드하는 내 메인 윈도우에 Sub가 있습니다.보조 창에서 기본 창을 실행하십시오.

버튼 클릭으로 열리는 두 번째 창이 있습니다. 두 번째 창이 닫히면 DataGrid의 Sub가 실행되기를 원합니다.

내가 Me.Close()라고 말한 후에 DataGrid Sub를 참조하려고했지만 "참조가 아닌 공유 멤버에 대한 참조가 필요합니다."라는 메시지가 나타납니다.

그때 오류가 얻을 수 있기 때문에 서브를 공유 할 수 없습니다 "공유 방법 내에서 클래스의 인스턴스 멤버를 참조 할 수 없습니다 ..."

나는이 또한 저를 제공하는 WINDOW_CLOSED 이벤트 핸들러를 시도했다 "비공유 회원에 대한 참조는 개체 참조가 필요했습니다." 내가 데이터 갤러리를 참조 할 때

누구든지 어떤 생각이라도?

답변

0

두 번째 Window의 FormClosing 이벤트에 대해 MainWindow에 EventHandler를 연결하거나 ShowDialog 메서드를 사용하여 두 번째 폼을 표시하고 Form Closes 후에 메서드를 실행해야합니다. 이런 식으로하면 효과가 있습니다.

첫 번째 방법

Private Sub Button_Click(sender As Object, e As RoutedEventArgs) 
    Dim secondWindow As New Window1 
    AddHandler secondWindow.Closing, AddressOf SecondWindowClosing 
    secondWindow.Show() 
End Sub 

Private Sub SecondWindowClosing(sender As Object, e As ComponentModel.CancelEventArgs) 
    'Run your data method here 
End Sub 

두 번째 방법

Private Sub Button_Click(sender As Object, e As RoutedEventArgs) 
    Dim secondWindow As New Window1 
    secondWindow.ShowDialog() 
    'Run your data method here 

End Sub 
+0

는 두 번째 방법, 환호 남자를 사용! – user3470664

+0

@ user3470664 도움이되기를 기원합니다. –

관련 문제