winform 大头针实现方法——把窗口钉在最上层

  • 平时我们再使用成熟的软件的时候,会发现有个大头针的功能挺不错的。就是点一下大头针,窗口就会钉住,一直保持在最上面一层,这样可以一边设置参数,一边观察这个窗口里面的变化,比较方便。
  • 下面我就来简单实现一下:
  • 效果如下:
  • 代码:
    大头针_无效
  • 大头针_有效
  • 添加资源
csharp 复制代码
        private void ButtonPin_Click(object sender, EventArgs e)
        {            
            if (this.TopMost)
            {
                this.TopMost = false;
                buttonPin.BackgroundImage = Properties.Resources.大头针_无效;
            }
            else
            {
                this.TopMost = true;
                buttonPin.BackgroundImage = Properties.Resources.大头针_有效;
            }

            // 如果你想让图片适应按钮大小,可以添加以下代码  
            buttonPin.BackgroundImageLayout = ImageLayout.Stretch;
        }
  • 调整按钮的其他属性
    • BackgroundImageLayout:这个属性控制背景图片在按钮上的布局方式。你可以设置为Stretch(拉伸以填充整个按钮)、Center(居中显示)、Zoom(缩放以适合按钮大小但保持图片的比例)、Tile(重复平铺)等。
    • FlatStyle:如果你想要一个完全平坦的按钮(没有默认的边框),可以将这个属性设置为Flat或Popup。
    • FlatAppearance:这个属性提供了进一步自定义平坦按钮外观的选项,如边框颜色、鼠标悬停效果等
相关推荐
XiaoZhenHua9820 小时前
C#工业机器视觉Recipe配方系统设计:多型号、多相机、多工位参数如何统一管理
c#·软件架构·机器视觉·工业自动化·工业软件·recipe
fujisheng66121 小时前
FUI 导航实践:拆开 Layer、History、Coverage 与 Cache 的组合语义
c#·unity3d
淡海水1 天前
10-05-高级-模式匹配-CSharp如何改变与数据结构的交互方式
数据结构·算法·c#·模式匹配
XiaoZhenHua981 天前
C# WinForms + 西门子S7 + SQLite + EPPlus生产数据采集系统架构设计
系统架构·sqlite·c#
Lost of 程序猿1 天前
船岸数据同步链路实战:SendFlag、单调版本号与断网三天后的续传
后端·c#·asp.net
cjp5602 天前
012.UG二次开发,UG管道服务器与WPF管道通讯,传输JSON数据
c#
jiushidt2 天前
ArcGIS Pro Add‑in 打包流程详解
arcgis·c#·.net·arcgispro
geovindu3 天前
CSharp: Observer Pattern
开发语言·后端·观察者模式·设计模式·c#·.netcore·行为模式
软件黑马王子3 天前
20.Resources资源加载:基本实现
开发语言·前端框架·c#
张人玉3 天前
基于 C# / .NET 8 + Windows Forms + SQLite 的桌面银行业务演示系统——华夏示范银行管理系统
windows·sqlite·c#·.net