这是贴配置文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="ConfigTest.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
        </sectionGroup>
    </configSections>
    <userSettings>
        <ConfigTest.Properties.Settings>
            <setting name="newDistance" serializeAs="String">
                <value>148</value>
            </setting>
        </ConfigTest.Properties.Settings>
    </userSettings>
</configuration>

解决方案 »

  1.   

    终于弄明白啦怎么用CONFIG文件,在LOAD FORM 时为用户建个CONFIG文件.不是APP.CONFIG.
    在关闭窗口时把更改的信息储存在CONFIG文件中.
     protected override  void OnLoad(EventArgs e)
            {            Configuration config;
                base.OnLoad(e);
                ExeConfigurationFileMap filemap = new ExeConfigurationFileMap();
                string FileName;
                string Path = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);//get the Path of the Config data
                FileName = Path + @"\" +Application.ProductName +@"\ConfigTab.config"; // define the Config data with "Projectname".config
                filemap.ExeConfigFilename = FileName; // call the config data
                config = ConfigurationManager.OpenMappedExeConfiguration(filemap, ConfigurationUserLevel.None);
                try                                  // try to do open the configdata and return a config object
                {
                    config = ConfigurationManager.OpenMappedExeConfiguration(filemap, ConfigurationUserLevel.None);
                }
                catch
                {
                    MessageBox.Show("Fehler");
                   
                }
                KeyValueConfigurationElement mainFormW = config.AppSettings.Settings["MainFormW"];//call the key 
                if (mainFormW == null)                                                  // if don't find, add the key and value.
                {
                    mainFormW = new KeyValueConfigurationElement("mainFormW", this.splitContainer1.SplitterDistance.ToString());
                    config.AppSettings.Settings.Add(mainFormW);
                }
                else
                {
                    this.splitContainer1.SplitterDistance = Convert.ToInt32(mainFormW.Value);
                }
            }
                         // save the configdata before closing
            protected  override void OnFormClosing( FormClosingEventArgs e)
            {
                base.OnFormClosing(e);
               string fileName = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\" + Application.ProductName + @"\configtab.config";
               ExeConfigurationFileMap filemap = new ExeConfigurationFileMap();
               filemap.ExeConfigFilename = fileName;
               Configuration config = ConfigurationManager.OpenMappedExeConfiguration(filemap, ConfigurationUserLevel.None);
               KeyValueConfigurationElement mainformw = config.AppSettings.Settings["MainFormW"];
               mainformw.Value = this.splitContainer1.SplitterDistance.ToString();
               config.Save();
            }
        }
    不过上边的提示消息仍然有.