`

winform去掉右上角关闭按钮的方法

阅读更多

一种方法是可以在窗体的属性面板将窗体的 ControlBox属性设置为false,或者在窗体的构造函数中这样写:

public Form1()
{
InitializeComponent();
this.ControlBox = false;   // 设置不出现关闭按钮
}

 不过这样做的话,会连同最小化和最大化按钮都给弄掉了,所以,如果你想只想让关闭按钮不起作用,然后保留最小化、最大化的话,就重写窗体的CreateParams方法:

//禁用窗体的关闭按钮       
private const int CP_NOCLOSE_BUTTON = 0x200;
protected override CreateParams CreateParams
{
get
{
CreateParams myCp = base.CreateParams;
myCp.ClassStyle = myCp.ClassStyle | CP_NOCLOSE_BUTTON;             
return myCp;     
}
}

 或者取消左上角的关闭事件执行

private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
}
// 重写OnClosing使点击关闭按键时窗体能够缩进托盘
protected override void OnClosing(CancelEventArgs e)
{
this.ShowInTaskbar = false;
this.WindowState = FormWindowState.Minimized;
e.Cancel = true;
}

 

分享到:
评论

相关推荐

    c# winform取消右上角关闭按钮的实现方法

    总之,取消C# WinForm窗口右上角关闭按钮的实现方法包括两种策略:通过`ControlBox`属性隐藏所有控件,或通过重写`CreateParams`和`Closing`事件实现关闭按钮的自定义行为。后者提供了更多的灵活性,允许我们仅禁用...

    Winform去掉最大化最小化关闭按钮

    总结来说,要实现“Winform去掉最大化最小化关闭按钮”的功能,主要步骤包括:改变`FormBorderStyle`为`None`,设置`ControlBox`为`false`,重写`ProcessCmdKey`以拦截关闭窗口的快捷键,以及可选地添加自定义的关闭...

    C#窗体编程不显示最小化、最大化、关闭按钮的方法

    本文介绍在C#窗体编程时,如何设置不显示右上角的最小化最大化关闭按钮。可以通过this.ControlBox这个属性的值来控制。 在Windows的窗体编程中,基本上每一个窗体都是一个最小化、最大化和关闭按钮的。见惯了...

    winform不获取焦点的右下角提示窗体

    在Windows Forms(Winform)开发中,创建一个不获取焦点且能像QQ那样在屏幕右下角滑动显示的提示窗体是一项常见的需求。这样的设计能够实现非侵入式的用户通知,让用户在不中断当前操作的情况下接收信息。下面将详细...

    tabcontrolEx,源于网上,添加close按钮事件

    最近开始搞winform,要有一个美观大方的tabcontrol,并且可以关闭,偶然在网上的程序员之窗下载到一个,但是没有关闭按钮,所以我只能自己动手改装了。 我改装了两处地方,第一处,将close的图标绘制绘制出来--当...

    无边框窗体Winform四周阴影效果 C#完美实现

    无边框窗体是指不显示标准标题栏、最大化、最小化和关闭按钮的窗体。通常,我们会通过设置`FormBorderStyle`属性为`None`来实现这一效果。然而,无边框窗体可能会导致一些问题,如移动和大小调整操作会变得困难。...

    C# WinForm弹窗总结

    本篇文章将深入探讨如何在C# WinForm中使用弹窗,特别是`MessageBox.Show`方法的使用及其相关的属性设置。 `MessageBox.Show`是.NET Framework中的一个静态方法,用于显示一个带有消息、标题、图标和按钮的对话框。...

    winform无边框窗体移动(效果不错)

    // 去掉系统默认的关闭、最小化、最大化按钮 } private void CustomForm_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) // 左键按下时开始拖动 { _dragPoint = new ...

    Winform消除button按下出现的虚线简单实现方法

    本文实例讲述了Winform消除button按下出现的虚线简单实现方法。分享给大家供大家参考。具体实现方法如下: ... 您可能感兴趣的文章:C#中Winform窗体Form的关闭按钮变灰色的方法C# Winform实现捕获窗体最小化

    winform实现窗体的浮动及隐藏完整源码.rar

    如果需要彻底关闭并释放资源,可以使用`Dispose`方法。 这个压缩包中的源码应该详细实现了以上所述的功能,并可能包含了一些额外的优化,如防止窗体超出屏幕边界、平滑移动效果等。学习这个源码可以帮助理解C# ...

    winform无边框窗体

    在C# WinForm开发中,"无边框窗体"是一种常见的需求,它指的是去除窗口默认的标题栏和边框,使用户界面更加简洁或自定义化。这通常用于创建如对话框、全屏应用或者自定义拖动效果的窗体。让我们深入探讨如何实现这一...

    窗体淡出_窗体淡出_winform减缓退出_winform界面_

    关于“窗体淡出_winform减缓退出”,上述代码实现了窗体缓慢淡出的效果,当用户点击退出按钮时启动定时器,窗体以设定的间隔逐渐变透明,最终关闭。 至于“winform界面”的扁平化设计,现代用户界面通常倾向于简洁...

    combobox 去掉边框,更改背景色 字体颜色

    在Windows Forms开发中,`ComboBox`控件是...解压并查看这些文件,可以帮助你更好地理解如何在你的C# Winform项目中应用上述技术。通过这样的自定义,你可以为你的应用程序创建一个更加美观且符合设计要求的用户界面。

    QQ弹出框

    当然,为了使应用更加完善,我们还可以考虑添加更多的功能,比如自定义动画速度、支持图片、链接等更丰富的内容,以及添加关闭按钮等交互元素。 在实际项目中,你可以将这个QQPopup类作为公共组件复用,通过调用`...

    用VS2005制作WinForm安装程序

    ### 使用VS2005创建WinForm安装程序的详细步骤 #### 1. 新建安装部署项目 在Visual Studio 2005中创建WinForm应用程序的安装包,首先需要新建一个安装部署项目。具体步骤如下: - 打开Visual Studio 2005。 - 在...

    C#移除所有事件绑定的方法

    事件是基于委托的,而委托本质上是一种多播代理,可以链接多个方法。以下是一个简单的事件声明和订阅示例: ```csharp private delegate int DEL_TEST_EventHandler(int m, int n); private event DEL_TEST_...

    CartoonForm

    不过,这同时也意味着我们需要自己实现关闭按钮的功能,一般可以在窗体的右上角添加一个自定义的关闭按钮,并处理其点击事件,调用`Close`方法关闭窗体。 至于“CartoonForm”的核心——加载位图图片,我们可以利用...

Global site tag (gtag.js) - Google Analytics