Existiert ein Eintrag in My.Settings

  • VB.NET
  • .NET 4.5

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Toolmaster.

    Existiert ein Eintrag in My.Settings

    Hallo,

    ich habe versucht mit dieser Methode zu prüfen ob ein gewisser Eintrag in My.Settings existiert.

    VB.NET-Quellcode

    1. ​If CallByName(My.Settings, XMLEntry, CallType.Get) IsNot Nothing Then
    2. MsgBox(XMLEntry & " Existiert")
    3. Else
    4. MsgBox(XMLEntry & " Existiert nicht")
    5. End If


    Doch leider bekomme ich dabei diesen Fehler:

    VB.NET-Quellcode

    1. ​System.MissingMemberException: "Der öffentliche Member Position_Y für den Typ MySettings wurde nicht gefunden."


    Doch genau diesen Fehler wollte ich mit dem If vorher abfragen.

    Jemand einen Tipp für mich?

    Grüße
    Bäh. VB6. Bevor Du weitermachst, bitte die empfohlenen VS-Einstellungen verwenden.
    Da der Zugriffsversuch eine Exception auslöst, geht das nicht. Wenn es stattdessen Nothing zurückliefern würde, schon. Aber das macht es eben nicht.
    Gegenvorschlag:

    VB.NET-Quellcode

    1. Dim AdditionalWord As String = Nothing
    2. If Not My.Settings.GetType.GetProperties().Any(Function(x) x.Name = XMLEntry) Then AdditionalWord = " nicht"
    3. MessageBox.Show(XMLEntry & " existiert" & AdditionalWord)

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.