2015-10-21 49 views
0

我想如果某布爾值是set.Inspite布爾值是真我的應用程序退出,這樣一個對話框顯示給用戶覆蓋Gtk.Window關閉事件不顯示對話框。我嘗試打印出布爾值。它是正確的。重寫GTK窗口關閉事件顯示一條消息

protected void OnDeleteEvent (object sender, DeleteEventArgs a) 
    { 
      Console.WriteLine (bval); 
      if (bval == true) { 

       mynot notification=new mynot(this); 
       notification.Show(); 

      } 
      else 
      { 
       Gtk.Application.Quit(); 
       a.RetVal = true; 
      } 
    } 

回答

1

信號處理程序返回值應在如果情況是真實的(停止從被調用的默認處理程序)。在其他情況下,您應該返回false以允許默認處理程序運行,而不是自己調用Quit()。

+0

謝謝..我沒有今天訪問Mac系統中,將看一看,並取回的明天。 – techno

+0

由於該方法是無效返回類型,因此我不能返回false。但是,通過將a.RetVal = true在若情況下,worked.Thanks – techno

+0

這Xamarin Studio.But內運行時,應用程序外運行時的工作只是當它到達如果condition.What可以去錯了關閉?請指點 – techno