You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#如何将应用程序最小化到系统托盘?Form1_Resize事件不生效求助

问题原因及解决方法
  • 最核心常见原因:Form的Resize事件未和你编写的Form1_Resize处理方法绑定
    WinForm的事件必须关联对应的处理方法才会在事件触发时执行逻辑,你写的button3_Click能正常运行,是因为你在设计界面双击按钮时,系统自动完成了点击事件和处理方法的绑定,而Resize的处理方法是你手动编写的,没有做绑定操作所以不会被调用。
    解决方法二选一:

    1. 设计器绑定:打开Form1的设计界面,选中窗体本身,打开属性窗口,点击顶部的闪电形「事件」图标,找到Resize事件,在下拉列表中选择已写好的Form1_Resize方法即可。
    2. 代码手动绑定:在Form1的构造函数中,InitializeComponent();行之后添加绑定代码:
    public Form1()
    {
        InitializeComponent();
        // 新增下面这行绑定代码
        this.Resize += Form1_Resize;
    }
    
  • 其他可排查的次要问题:

    • 先在Form1_Resize方法第一行添加测试代码MessageBox.Show("Resize事件已触发");,拖动窗体边缘调整大小,确认是否真的没有触发事件,排除是逻辑判断(仅最小化时才执行后续逻辑)导致你误以为事件没生效的情况。
    • 确认Form1的构造函数中存在InitializeComponent();调用,设计器中绑定的所有事件都依赖该方法执行才能生效。
    • 检查是否有其他代码拦截了窗体的Resize消息,比如重写了WndProc方法过滤了WM_SIZE消息(初学者基本不会遇到该情况)。

内容的提问来源于stack exchange,提问作者luckyluck31

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 23:36:03