monomac - Как закрыть дочернее окно при нажатии кнопки в главном окне

Я создал проект MonoMac с помощью monodevelop.

Я открыл файл MainWindow.xib в Xcode Interface Builder. В Interface Builder я добавил в свой проект новую панель NSwindow. Имя панели: Setting_window и название выхода: Setting_window.

В главном окне у меня есть 2 кнопки: скрыть окно настроек (кнопка 1) и показать окно настроек (кнопка 2);

Когда я запускаю проект, он показывает 2 окна: главное окно и окно настроек. Я хочу скрыть и показать окно настроек при нажатии кнопок btn1 и btn2. В C# для Windows я использую .show() и .Dispose(); Но в Monomac я не знаю, какие методы вызывать.

Это код:

Setting_window.Title = "my setting"; // This works as expected 
//Setting_window.??? // I want to close the settings window

person user1343503    schedule 21.04.2012    source источник


Ответы (1)


NSWindow.Close() был недоступен из-за того, что он выпускал ссылку на объектную сторону вещей и плохо работал с GC.

Похоже, что недавно было зафиксировано исправление, которое возвращает этот метод, чтобы вы могли закрыть окно программно:

https://github.com/mono/monomac/commit/6183d93be442aec3946f19e273e4810dff291f66

person Curtis    schedule 17.05.2012