Benutzer mit den meisten Antworten
Laden von Dateien verhindern?

Frage
-
Guten Morgen!
Ich habe eine ListBox, in der Dateien gespeichert und später wieder geladen werden sollen. Will man speichern, aber es befindet sich keine Datei in der ListBox, erscheint eine MsgBox:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PlayListSAVE.Click
If ListBox1.Items.Count = 0 Then
MessageBox.Show(Me, "Füge erst Lieder in die Playlist ein, dann kannst du speichern!", "Negativ", MessageBoxButtons.OK, MessageBoxIcon.Information)
Exit Sub
Else
Dim PlayList As New System.Collections.Specialized.StringCollection
For Each item As String In ListBox1.Items
PlayList.Add(item)
Next
My.Settings.PlayList = PlayList
My.Settings.Save()
MessageBox.Show(Me, "Deine PlayList wurde gespeichert. Beim nächsten Start der Anwendung auf 'Laden' Klicken.", "Gespeichert!", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
End Sub
Wenn man das Programm das erste mal startet und auf "Laden" klickt, hängt es sich auf, weil es nichts zu laden gibt. Also habe ich diese Meldung mit eingebaut:
Doch die Methode funktioniert auch nicht... Es kommt die Meldung: "Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt." Hat es evtl. mit der "= 0" etwas zutun?Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PlayListLOAD.Click
If My.Settings.PlayList.Count = 0 Then
MessageBox.Show(Me, "Du hast noch keine PlayList erstellt!", "Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If
ListBox1.Items.Clear()
For Each item As String In My.Settings.PlayList
ListBox1.Items.Add(item)
Next
End Sub
Danke schon mal!
Antworten
-
Hi,
wenn Du weißt, wie man debuggt, warum machst Du es dann nicht bzw. sagst gleich, welche Codezeile den Fehler verursacht. (Letztes mal wusstest Du es zudem nicht)
Was soll man dir da helfen? Entweder ist My, My.Settings oder (was wahrscheinlicher ist) My.Settings.Playlist Nothing. Die Instanz wurde also nicht erzeugt. Daher solltest Du das entweder per:
If Not My.Settings.Playlist Is Nothing Then ... End if
prüfen und entsprechend darauf reagieren oder die Instanz vorher erstellen. Wo Du das machen musst, hängt von mehreren Faktoren ab.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort vorgeschlagen Tom Lambert (Koopakiller)Moderator Sonntag, 30. August 2015 11:47
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Freitag, 4. September 2015 10:18
Alle Antworten
-
Hi,
setz doch bitte einfach mal einen Breakpoint auf die erste Zeile in der Methode und spring dann mit F10 durch die einzelnen Zeilen. Dann siehst Du auch genau, welches der angesprochenen Objekte Nothing ist.
Für weitere Informationen zum Debugging in Visual Studio schau dir bitte diesen MSDN Artikel an:
https://msdn.microsoft.com/de-de/library/dn986851.aspx
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Das hilft mir leider gar nicht -.- Ich weiß wie man Debuggt. Der Fehler tritt bei
If My.Settings.PlayList.Count = 0 Then
auf. Kann mir jemand helfen?
- Bearbeitet ProgrammBär Sonntag, 30. August 2015 09:38
-
Hi,
wenn Du weißt, wie man debuggt, warum machst Du es dann nicht bzw. sagst gleich, welche Codezeile den Fehler verursacht. (Letztes mal wusstest Du es zudem nicht)
Was soll man dir da helfen? Entweder ist My, My.Settings oder (was wahrscheinlicher ist) My.Settings.Playlist Nothing. Die Instanz wurde also nicht erzeugt. Daher solltest Du das entweder per:
If Not My.Settings.Playlist Is Nothing Then ... End if
prüfen und entsprechend darauf reagieren oder die Instanz vorher erstellen. Wo Du das machen musst, hängt von mehreren Faktoren ab.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort vorgeschlagen Tom Lambert (Koopakiller)Moderator Sonntag, 30. August 2015 11:47
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Freitag, 4. September 2015 10:18
-
Hi,
glaub ich nicht, dass das so wie gewünscht funktioniert.
Lass das "Not" an der Stelle weg, ansonsten kommt die Meldung immer dann, wenn das Objekt existiert und nicht, wenn es eben nicht existiert.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community