T
TS
I can't find a property to lock the form so that you can't drag it around by
the title bar. The locked property doensn't do this.
the title bar. The locked property doensn't do this.
* "TS said:I can't find a property to lock the form so that you can't drag it around by
the title bar. The locked property doensn't do this.
Public Property Moveable() As Boolean
Herfried K. Wagner said:From my FAQ (<URL:http://dotnet.mvps.org/dotnet/faqs/>):
Based on an implementation written by Tom Spink.
The code below defines a base class that provides a 'Moveable' property.
By inheriting from this class and setting the 'Moveable' property to
'False', the user will be prevented from moving then form:
\\\
Imports System.ComponentModel
Imports System.Windows.Forms
Public Class MoveableForm
Inherits Form
Private Const WM_NCLBUTTONDOWN As Int32 = &HA1
Private Const WM_SYSCOMMAND As Int32 = &H112
Private Const HTCAPTION As Int32 = &H2
Private Const SC_MOVE As Int32 = &HF010
Private m_Moveable As Boolean
Public Sub New()
MyBase.New()
Me.Moveable = True
End Sub
< _
Category("Behavior"), _
Description("Allows the form to be moved.") _
Public Property Moveable() As Boolean
Get
Return m_Moveable
End Get
Set(ByVal Value As Boolean)
m_Moveable = Value
End Set
End Property
Protected Overrides Sub WndProc(ByRef m As Message)
If Not m_Moveable Then
If _
m.Msg = WM_SYSCOMMAND And _
m.WParam.ToInt32() = SC_MOVE _
OrElse _
m.Msg = WM_NCLBUTTONDOWN And _
m.WParam.ToInt32() = HTCAPTION _
Then
Return
End If
End If
MyBase.WndProc(m)
End Sub
End Class
///