событие закрытия вкладки usercontrol - PullRequest
1 голос
/ 03 июня 2011

Привет, у меня есть вкладка загрузить этот пользовательский контроль. когда я хочу закрыть эту вкладку, я хочу вызвать это событие cancelbutton_click, чтобы вызвать подтверждение закрытия, если все в порядке, а затем закрыть, если отменить, вкладка остается.

если я использую событие Unloaded, оно всплывет дважды перед закрытием.

 private void UserControl_Unloaded(object sender, RoutedEventArgs e)
        {
              cancelbutton_click(sender,null);
        }

Кнопка отмены:

private void cancelButton_Click(object sender, RoutedEventArgs e)
        {
  MessageBoxResult objResult = MessageBox.Show("\nAre you sure you want to cancel?", "Cancel Confirmation", MessageBoxButton.OKCancel);


            if (objResult == MessageBoxResult.OK)
            {
                try
                {
                    TabItem tabItem = parentWindow.FindTabItemByName(ControlType.BusinessesContractors.ToString(), false);
                    this.parentWindow.mainTabControl.Items.Remove(tabItem);
                    this.parentWindow.statusTextBlock.Text = "Ready";
                }
                catch (Exception ex)
                {

                }
            }

как это решить? спасибо

1 Ответ

1 голос
/ 03 июня 2011

Unloaded вызывается, когда элемент управления уже удален, это событие, которое вы не хотите часто обрабатывать, просто создайте кнопку, которая должна закрыть вкладку, обработать ее щелчок, проверить, пользователь хочет отменить через диалог и закрыть вкладку, если он этого не делает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...