繁体   English   中英

如何使用C#中的功能保存复选框设置

[英]How do you save checkbox settings with function in c#

我正在尝试使用设置对话框创建一个应用程序。 在对话框中,将有一个复选框。 我进入了Visual Studio中的设置面板,并以“自动启用”的名称命名。 我将类型设置为bool,将范围设置为user。 我还将值设置为true。 同时,在表单中,我将Checkbox1_CheckedChanged函数设置为复选框,并添加了如下函数:

private void checkBox1_CheckedChanged(object sender, EventArgs e)
    {
        if(checkBox1.Checked == true)
        {
            MainEditor m = new MainEditor();
            m.menustrip1.Visible = true;
        }
        if (checkBox1.Checked == false)
        {
            MainEditor m = new MainEditor();
            m.menustrip1.Visible = false;
        }
    }

当我对其进行测试时,该复选框被设置为检查为我之前设置的值。 我取消选中该复选框并关闭对话框,然后再次打开它。 结果很好...就像我一样未经检查。 但是我发现的一个问题是,当我取消选中复选框并关闭对话框时,当回到MainEditor时,来自checkbox1的代码功能无法正常工作。 我做错了什么? 有人可以帮忙吗? 谢谢。

我认为您正在将MainEditor初始化为新实例,而不是调用OpenForms。 尝试这个:

var m = Application.OpenForms.OfType<MainEditor>().SingleOrDefault();
if (m != null)
{
  m.menustrip1.Visible = true;
} 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM