2012-03-21 3 views
0

Когда я нажимаю кнопку X (кнопка закрытия окна в верхнем правом углу), application.exit или this.close запускается неявно?C# в приложении Windows Закрытие или выход

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

Из-за этого, я думаю, что мое приложение не очень близко/выходит правильно.

namespace FrontEnd_Offline 
{ 
    public partial class Main_Usr : Form 
    { 
     public Main_Usr() 
     { 
      InitializeComponent(); 
      this.IsMdiContainer = true; 
     } 

     private void barButtonItem_CreateOrdre_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) 
     { 

     } 

     private void barButtonItem_OrdreListe_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) 
     { 
      Ordre_Liste f = new Ordre_Liste(); 
      f.MdiParent = this; 

      f.Show(); 
     } 
    } 
} 
+0

Выполняете ли вы какие-либо фоновые потоки в своем приложении? Пожалуйста, смотрите: http://stackoverflow.com/questions/465306/c-sharp-windows-application-not-closing – KingCronus

+0

Спасибо, что вы не похожи на stackoverflow.com/questions/465306/, я могу убить свою программу в диспетчере задач , – user609511

ответ

0

Вы пытаетесь вызвать метод base.dispose(true) для полного выхода из приложения. Вы можете написать этот код в случае закрытия кнопки. Несмотря на то, что это не может считаться лучшей практикой программирования.

3

Это условно, но это не проблема. Все ваши формы были удалены, но ваш код не прекращался. Общие причины этого:

  • Начальная нить без установки свойства IsBackground в true и не гарантирует, что нить прекращается, когда ваша основная форма закрывается.
  • с использованием приложения.DoEvents() в вашем коде.

Вы можете использовать Debug + Break All, а затем Debug + Windows + Threads, чтобы узнать, какой код все еще работает. Некоторые из показанных там потоков не являются вашими нитями, поэтому избегайте преследовать тех, которые не показывают хорошую трассировку стека.

+0

Спасибо. как я могу сделать Debug + Windows + Threads? – user609511

+0

Щелкните пункты меню. –

Смежные вопросы