c# - 如何使用复选框显示/隐藏表单?

标签 c# winforms

抱歉,我是 C# 新手,不确定我做错了什么。

这是我正在使用的代码:

private void chkSmallMenu_CheckedChanged(object sender, EventArgs e)
{
    frmSmallMenu sm = null;
    if (chkSmallMenu.Checked) 
    { 
        if (sm is null || sm.IsDisposed)
        { 
            sm = new frmSmallMenu(); 
        } 
        sm.Show(); 
    } 
    else 
    {
        MessageBox.Show("close");
        sm?.Close(); 
    }
}

窗口将打开,但当我取消选中该框时,什么也没有发生,我不知道为什么。 我尝试过寻找答案,但没有任何效果。

最佳答案

试试这个:

frmSmallMenu sm = new frmSmallMenu();

    private void chkSmallMenu_CheckedChanged(object sender, EventArgs e)
    {
        if (chkSmallMenu.Checked == true)
        {
            sm.Show();
        }
        else
        {
            MessageBox.Show("close");
            sm.Hide();
        }
    }

关于c# - 如何使用复选框显示/隐藏表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70997721/

相关文章:

winforms - 通过 Web 服务发送 Linq to SQL 类

Winforms RichtextBox 粗体/斜体/下划线格式问题

C# - 当 Dog 是 Animal 的子类时,如何将 List<Dog> 转换为 List<Animal>?

c# - 在 C# 中将 foreach 用于属性

c# - Visual Studio 负载测试结果存储库空间不足

.net - 错误1编译时无法复制文件

c# - 如何根据 C# 中的名称比较两个文件夹中的相似文件?

c# - 如何获取列表框中的项目数

c# - 如何使用 Entity Framework 在 2 个或更多表的联合 View 上保存更改?

macos - 在 Mac 上以 32 位模式运行交互式 F#