解决方案 »

  1.   

    子窗体的Load事件中,添加你的加载配置文件的代码。每次打开子窗体的时候都去读取配置文件中的内容绑定到子窗体上
      

  2.   

    你好,我在构造方法中初始化的(代码如下),但是读出来的还是修改之前的,是什么原因呢?
    public Form2()
            {
                InitializeComponent();
                //初始化系统多选列表
                CheckedListBox_Checked();
                //初始化日志路径
                textBox1.Text=System.Configuration.ConfigurationManager.AppSettings["path"];
            }
      

  3.   

    我在主窗口button1的click事件中是
    public static Form2 frm2;  //定义了一个静态变脸,为了防止每次点击button1都出现一个子窗口,form2中有一个保存关闭的按钮,它的click事件里Form1.frm2 = null; this.Close(); 所以在button1的click事件中做了一下判断
    private void Button1_Click(object sender, EventArgs e)
            {
                if (frm2 == null)
                {
                    frm2 = new Form2();
                    frm2.Refresh();
                    frm2.Show();
                }
                else
                {
                    frm2.Activate();
                }
            }
      

  4.   

    你好,我在构造方法中初始化的(代码如下),但是读出来的还是修改之前的,是什么原因呢?
    public Form2()
            {
                InitializeComponent();
                //初始化系统多选列表
                CheckedListBox_Checked();
                //初始化日志路径
                textBox1.Text=System.Configuration.ConfigurationManager.AppSettings["path"];
            }

    确定是保存近app.config文件里了,我用xml的方式更新的,更新之后我都打开看一下,确实app.config里内容是修改之后的。
      

  5.   

    谢谢两位,问题解决了,原因是不能用System.Configuration.ConfigurationManager.AppSettings["path"]去读app.config,要使用xml的读取方式去读,上面的读法读的应该是程序名.exe.config里面的内容。
      

  6.   

    Save之后更新System.Configuration.ConfigurationManager.RefreshSection("XXXX"); 
    http://blog.csdn.net/celte/article/details/9749389文章有关于这方面的解释。