c# 窗体属性设置不能拖大
时间: 2023-08-01 14:12:57 浏览: 49
如果您想要禁止窗体大小调整,可以通过设置FormBorderStyle属性为FixedSingle或FixedDialog来实现。这两个属性值都会禁止用户调整窗体大小。
示例代码如下:
```csharp
// 禁止用户调整窗体大小
this.FormBorderStyle = FormBorderStyle.FixedSingle;
```
或者:
```csharp
// 禁止用户调整窗体大小
this.FormBorderStyle = FormBorderStyle.FixedDialog;
```
如果您只想禁止用户通过拖动来调整窗体大小,可以在窗体的MouseDown、MouseMove事件中判断鼠标位置,如果鼠标在窗体边缘,则禁止拖动。
示例代码如下:
```csharp
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
// 只有在窗体标题栏上点击时才允许拖动窗体
if (e.Button == MouseButtons.Left && e.Y <= SystemInformation.CaptionHeight)
{
// 在窗体左边缘或右边缘时禁止拖动
if (e.X <= 5 || e.X >= this.ClientSize.Width - 5)
{
isDragging = false;
return;
}
isDragging = true;
lastLocation = e.Location;
}
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
if (isDragging)
{
Location = new Point(Location.X - lastLocation.X + e.X, Location.Y - lastLocation.Y + e.Y);
Update();
}
}
private void Form1_MouseUp(object sender, MouseEventArgs e)
{
isDragging = false;
}
```
这段代码会在窗体的标题栏上左键点击时开启拖动窗体功能,但是在窗体的左边缘和右边缘禁止拖动窗体。