2008-11-20 36 views
9

Herkese selamlar! Bu benim stackoverflow üzerinde ilk sorum. Bölümümdeki diğer geliştiriciler için yazdığım bir WPF uygulamasına sahibim ve başlangıçta kontrol etmem ve ayarlanmadıysa güncellemem gereken birkaç ayar var (biri kullanıcılarda bir yürütülebilir dosyanın yeridir) bilgisayar, hepimiz var, sadece aynı yerde değiliz. Bu yüzden, uygulamam ilk kez başladığında, konumu seçmelerini sağlamak için bir filechooser'ı açmam gerekiyor.Bir WPF uygulamasında appSettings nasıl güncellenir?

Yapmam gereken şey bunun yerini appSettings'e yazmaktır, ancak bunu göremiyorum ve dün gece Google'ı arama yapmanın bir yolunu bulmaya çalıştım. Gördüğüm çoğu cevap, app.config dosyasını düz XML olarak okumakla ilgiliydi ve bu doğru görünmüyor.

Uygulamam için appSettings'deki değerleri güncellemenin bir yoluna ihtiyacım var. Onlardan iyi okuyabilirim, sadece onlara nasıl yazılacağını anlayamadım. Çok teşekkürler!

James

cevap

20

ConfigurationManager sınıfını incelediniz mi? Bu app.config dosyasına daha sağlam bir arayüz sağlar ve böyle bir şey yapabilirsiniz:

Configuration oConfig = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
oConfig.AppSettings.Settings["PreferenceToRemember"].Value = “NewValue”; 
oConfig.Save(ConfigurationSaveMode.Full); 
ConfigurationManager.RefreshSection(”appSettings”); 

Sadece projeye System.Configuration içe aktarmayı unutmayın. Varsayılan olarak eklenmez.

+0

Bunu (hata ayıklama modunda olsa da) kullanıyorum ve "bellekte" değerlerini kaydeder, ancak bunları hiçbir zaman dosyaya yazmaz. Herhangi bir fikir? –

+0

Hmm, bu garip. Hata ayıklama modunun dışında çalıştırırsanız ne olur? –

+1

Aynı problem vardı. Yeni bir değer ekliyorsanız ConfigurationSaveMode.Minimal veya Full kullanın ve ConfigurationSaveMode.Modified'ı kullanmadığınızdan emin olun. – MattAitchison

İlgili konular