当前位置:编程学习 > C#/ASP.NET >>

C#如何禁用Form窗口的最大化按钮的三种方法

第一种是: this.MaximizeBox = false; 
第二种是: this.FormBorderStyle = system.Windows.Forms.FormBorderStyle.SizableToolWindow; 这样的话,最大化、最小化按钮都会消失。 
第三种: this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; 
然后自己添加按钮,给它设置图标跟系统的最小化,关闭按钮图标一样,功能也一样,代码很好写。 this.Dispose();  // 关闭 
this.WindowState = FormWindowState.Minimized; // 最小化 C# --------------------编程问答-------------------- 第三种: this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; 
然后自己添加按钮,给它设置图标跟系统的最小化,关闭按钮图标一样,功能也一样,代码很好写。 this.Dispose();  // 关闭

自己做的按钮总觉得不那么和谐,可能是我技术不行吧! --------------------编程问答-------------------- 是不是还可以通过消息来拦截:protected override void WndProc(ref Message msg) --------------------编程问答-------------------- 听说回复有奖 --------------------编程问答-------------------- 1。设定系统菜单
首先在窗体类中声明:
public class Form1 : System.Windows.Forms.Form
{
[DllImport("user32.dll",EntryPoint="GetSystemMenu")] //导入API函数
extern static System.IntPtr GetSystemMenu(System.IntPtr hWnd , System.IntPtr bRevert);

[DllImport("user32.dll",EntryPoint="RemoveMenu")]
extern static int RemoveMenu (IntPtr hMenu, int nPos, int flags);
static int MF_BYPOSITION = 0x400;
static int MF_REMOVE = 0x1000;

public Form1()//构造函数
{
InitializeComponent();
RemoveMenu(GetSystemMenu(Handle,IntPtr.Zero),0,MF_BYPOSITION|MF_REMOVE);    
}
}

2。窗体属性设置
将 窗体的 FormBorderStyle 属性设为 FixedSingle。//改变窗体风格,使之不能用鼠标改变大小
MaximizeBox       属性设为 false//禁止使用最大化按钮  --------------------编程问答-------------------- 窗口有个 size 事件 在里面 如果是发现是最大化 就直接 return
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,