Отключить кнопку "Закрыть" без отключения значка

Моя проблема настолько проста, но я не могу решить ее.

Я просто хочу удалить кнопку "Закрыть" из формы и не удалять значок.

Я использовал ControlBox = false, но он также удаляет значок формы, я просто хочу сохранить его.

Есть ли в любом случае я могу сделать это либо по коду или свойствам?

2 ответа

Добавьте это под Public Class Form ...:

Protected Overrides ReadOnly Property CreateParams() As CreateParams
    Get
        Dim Param As CreateParams = MyBase.CreateParams
        Param.ClassStyle = Param.ClassStyle Or &H200
        Return Param
    End Get
End Property

Это должно работать отлично!

Если вы хотите что-то полное возможностей, то вы можете использовать мой SystemMenuManager By Elektro Class.

Просто добавьте весь код в один класс и используйте его, как в примере ниже:

Public Class Form1

    Dim SystemMenu As New SystemMenuManager(Me)

    Private Shadows Sub Load() Handles MyBase.Load

        ' Disables the 'Close' button and 'Close' menu-item.
        SystemMenu.SetItemState(SystemMenuManager.Item.Close, 
                                SystemMenuManager.ItemState.Disabled)

    End Sub

End Class
Другие вопросы по тегам