Как я могу скрыть унаследованную полосу меню? - PullRequest
0 голосов
/ 01 сентября 2011

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

Как я могу скрыть унаследованную полосу меню? В качестве альтернативы, как я могу обменять унаследованное меню на то, что я создаю сам в новой форме?

Ответы [ 2 ]

2 голосов
/ 01 сентября 2011

В базовом классе формы извлеките код создания полосы меню из InitializeComponent () в виртуальный метод, а затем переопределите этот метод в новой форме.Недостатком этого является потеря поддержки визуального дизайнера для меню в базовой форме.

1 голос
/ 07 сентября 2011

Я нашел другой способ, который я фактически использовал.

Если вам не нужно снова показывать меню в этой конкретной форме, вы можете инициализировать все компоненты как обычно.Затем просто сделайте публичный метод, такой как HideMainMenu(), в базовом классе, который вы вызываете после запуска всех инициализаций, который только делает это:

Public Sub HideMainMenu()
    Me.Menu = Nothing
End Sub

Возможно, вы могли бы показать менюснова, сделав

Public Sub ShowMainMenu()
    Me.Menu = Me.myPrivateMainMenu
End Sub

Но я не пробовал это ...

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