У меня есть очень интересное задание, с которым мне нужна помощь. Описание выглядит следующим образом:
У меня есть пользовательский элемент управления (SomeUserControl), который я использую в главном окне. Я пишу свое приложение полностью на SomeUserControl, а в главном окне размещается SomeUserControl и больше ничего.
Прямо сейчас у меня есть кнопка выключения (в SomeUserControl), которая должна закрывать главное окно. Причина этого заключается в том, что я не хочу, чтобы что-то из SomeUserControl закрывало само приложение, а вызывало событие из SomeUserControl, и главное окно получало его, а главное окно закрывало приложение вместо SomeUserControl.
Как мне это сделать? Я не знаком с концепцией создания и обработки пользовательских событий, поэтому, если кто-то сможет объяснить это словами и кодом в качестве примера, я буду вам очень благодарен!
Редактировать: Вот мой код пока.
(в окне 2)
Public Event CloseApp As EventHandler
Private Sub CancelButton_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles CancelButton.Click
DialogResult = False
RaiseEvent CloseApp(Me, New EventArgs)
End Sub
(в главном окне)
Общедоступная страница входа в систему как новая страница входа в систему
Public Sub New()
InitializeComponent()
AddHandler loginPage.CloseApp, AddressOf Me.ShutDownJobChangeWindow
End Sub
Private Sub ShutDownJobChangeWindow(ByVal sender As Object, ByVal e As EventArgs)
Application.Current.Shutdown()
End Sub
Цель: я хочу закрыть приложение, когда я нажимаю кнопку отмены в окне 2, но я не хочу делать это таким образом, чтобы окно 2 закрывалось само, но путем отправки некоторого уведомления в главное окно и главное окно закрывает приложение.