Projekt-Anfragen: Tel: 07022/9319004 info@CodeDocu.de Software Entwicklung in C# WPF Asp.Net Core Vba Excel Word SQL-Server EF Linq, UWP Net
#

WPF: Settings Properties zur Laufzeit erstellen

 

 

Ich möchte in meiner WPF Anwendung Daten in den Settings speichern.

Die Settings sollen zur Laufzeit erscheinen.

Allerdings kommt eine Fehlermeldung, wenn man die  Daten letztendlich in die Settings speicher.

 

Folgender C# Code wird üblicherweise empfohlen um Settings zu speichern.

Properties.Settings.Default["Test_String_Setting"] = "Hallo";

 

Fehlermeldung

System.NullReferenceException occurred

  HResult=0x80004003

  Message=Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

  Source=<Cannot evaluate the exception source>

 

 

 

Lösung: man kann den Wert in die DefaultValue schreiben.

Dann muss man diesen aber auch wieder abfragen.

Properties.Settings.Default.Properties["Test_String_Setting"].DefaultValue  = "Hallo";

 

 

 

Kompletter C# Code in WPF

Dabei wird ein Settingswert zur Laufzeit angefügt und in die Anwendungs-Settings angefügt

private void save_Settings()

        {

            //----------< save_Settings() >----------

            //System.Configuration

 

            //< Setting erstellen >

           

            SettingsProperty prop = new System.Configuration.SettingsProperty("Test_String_Setting");

            prop.PropertyType = typeof(string);           

            Properties.Settings.Default.Properties.Add(prop);

           

            Properties.Settings.Default.Save();

//*ok

            Properties.Settings.Default.Properties["Test_String_Setting"].DefaultValue  = "Hallo";

 

//*fehler

            //Properties.Settings.Default["Test_String_Setting"] = "Hallo";

            //</ Setting erstellen >

 

            //< Settings speichern >

            Properties.Settings.Default.Save();

            //</ Settings speichern >

 

 

           

 

            //----------</ save_Settings() >----------

        }

 

        private void read_Settings()

        {

            //----------< save_Settings() >----------

            //System.Configuration

 

            //< Setting erstellen >

            if (Properties.Settings.Default.Properties["Test_String_Setting"] != null)

            {

                string sTest = Properties.Settings.Default.Properties["Test_String_Setting"].DefaultValue.ToString() ;

                MessageBox.Show(sTest.ToString());

            }

            //</ Setting erstellen >

 

            //< Settings speichern >

            Properties.Settings.Default.Save();

            //</ Settings speichern >

 

            //----------</ save_Settings() >----------

        }

 
 

Mobile
»
WPF Fehlermeldung: Führen Sie zuerst eine Trennung durch. Beim verschieben von Child Elementen
»
WPF: Form does not contain a definition for _MouseClick
»
Fehler: A second operation started on this context before a previous asynchronous operation completed.
»
Fehler: Cannot implicitly convert type System.Threading.Tasks.Task long to long
»
Fehler durch Caliburn Micro
»
WPF: Referenz zu System.Windows.Interactivity ist fehlerhaft oder fehlt
»
WPF: Settings zur Laufzeit erstellen und abfragen
»
WPF Error: An error occurred while signing
»
WPF Registry. DeleteSubKey: System.UnautohorizedAccessException
»
WPF, Error: UserControl.Name nicht mit Bindestrich

.

Jobs, Projekte, Angebote für Freiberufler, Selbstständig an Info@CodeDocu.de