Как скрыть окно Gtk#?

Как скрыть окно Gtk#, созданное в MonoDevelop? Я пробовал следующее, но это не работает:

public MainWindow (): base (Gtk.WindowType.Toplevel)
{
    Build();
    this.HideAll();
    this.Visible = false;
}

Решение Вызов HideAll() вне конструктора, как предложил томлог, работает. Если вы хотите выполнить некоторую работу, прежде чем показывать окно, вы можете

  • Добавьте обработчик событий в Window.Shown перед вызовом Build()
  • Выполните работу перед вызовом Build() (вероятно, в большинстве случаев это лучшая альтернатива)

person weiqure    schedule 09.06.2009    source источник


Ответы (1)


Я не думаю, что вы можете вызвать HideAll в конструкторе, потому что форма не полностью инициализирована и, следовательно, еще не видна.

person Tom van Enckevort    schedule 09.06.2009