0

ユーザーが出力ディレクトリを定義する必要があるアプリケーションに取り組んでいます。app.configiniについてもよく読んだ後(ここでは推奨されておらず、.NET にはそれらを読み取るためのクラスや名前空間がありません) とtxt (少し面倒です) を読んだ後、app.config に移動することにしました。だから私はこのコードを書いた:

    // Here I save to app.config file
    private void button1_Click(object sender, EventArgs e)
    {
        if (textBox2.Text != "")
        {
            oConfig.AppSettings.Settings.Add("directorio_bases", textBox2.Text);
            oConfig.Save(ConfigurationSaveMode.Modified);
            ConfigurationManager.RefreshSection("appSettings");
            textBox1.Text = ConfigurationManager.AppSettings["directorio_bases"];
        }
        else
        {
            MessageBox.Show("Debes seleccionar una ruta donde guardar las bases generadas", "Error",
                            MessageBoxButtons.OK, MessageBoxIcon.Error);
        }

    }

    // Here I read from app.config file just for informative purpose only
    private void ConfigurationUserControl_Load(object sender, EventArgs e)
    {

        textBox1.Text = ConfigurationManager.AppSettings["directorio_bases"];
    }

    // Here is where I get the path to the folder
    private void button2_Click(object sender, EventArgs e)
    {
        if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
        {
            textBox2.Text = folderBrowserDialog1.SelectedPath;
        }
    }

プログラムの実行中はコードは正常に機能しますが、プログラムを閉じたり開いたりすると、値が失われます。だから私の質問は:

  • 私が間違っていることは何ですか?なぜ値が保持されないのですか?
  • app.config、config.ini、または config.txt ファイルを使用しましたか? このトピックについてあなたの意見を聞く必要があります
4

1 に答える 1

2

実行可能ファイルを手動で実行しようとしましたか (例: bin フォルダーから)? アプリケーションをデバッグ モードで実行している場合、app.config ファイルは変更されません。

次のリンクをご覧ください: C# - アプリの構成は変更されません

于 2013-04-27T22:55:46.150 に答える