2016-07-22 14 views
-2

Im ein Problem mit zu behandeln versuchen, ein ArgumentNullExeption aufgetretenVB.net Null Fehler

Wert kann nicht Null sein

paramiter Name Artikel

Bisher versucht ive folgende

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     Dim ArgumentNullException As New Boolean 
     If (ListBox2.Items.Add(ListBox1.SelectedItem.ToString = "")) Then 
      MessageBox.Show("please pick from list", "error") 
     End If 
     ListBox1.Items.Remove(ListBox1.SelectedItem) 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     Dim ArgumentNullException As New Boolean 
     If (ListBox2.Items.Add(ListBox1.SelectedItem Is Nothing)) Then 
      MessageBox.Show("please pick from list", "error") 
     End If 
     ListBox1.Items.Remove(ListBox1.SelectedItem) 


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     Dim ArgumentNullException As New BooleanListBox2 
     ListBox2.Items.Add(ListBox1.SelectedItem) 
     If (ListBox1.SelectedItem) = "" 
      MessageBox.Show("please pick from list", "error") 
     ListBox1.Items.Remove(ListBox1.SelectedItem) 

A nd Fehler kommt noch kann jemand helfen, bitte

Aktualisiert:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
      ListBox2.Items.Add(ListBox1.SelectedItem) 
      If IsNothing (ListBox1.SelectedItem) 
       MessageBox.Show("please pick from list", "error") 
      ListBox1.Items.Remove(ListBox1.SelectedItem) 

Gibt Fehler noch

+0

Es ist besser für Sie den gesamten zugehörigen Code einzufügen, wie die Initialisierung der Liste Variable. – PSo

+0

Was in aller Welt ist das: 'If (ListBox2.Items.Add (ListBox1.SelectedItem.ToString =" ")) Dann' ?? –

+0

Noob Trial and Error – shaggs

Antwort

4

Frage ziemlich unklar ist, aber ich werde es versuchen.


Wenn Ihre Anwendung hat Listboxes und verwendet das .SelectedItem Attribut sollten Sie immer Try/Catch verwenden oder noch besser überprüfen, ob der Benutzer ausgewählt hat, und Artikel:

If IsNothing(ListBox1.SelectedItem) Then Exit Sub 

Sie auch

nutzen könnten If/Else, aber setzen Sie die Anweisung in der ersten Zeile des Codes macht es besser lesbar meiner Meinung nach
If ListBox1.SelectedItems.Count = 0 Then Exit Sub 

Sie auch nutzen könnten.

diesen Code wird Ihre Taste tut nichts machen, wenn es keine ausgewählten Elemente sind. Ansonsten können Sie mehrzeilige-If verwenden, um ein MsgBox("Please pick an Item") zu setzen, um den Benutzer zu warnen:

If IsNothing(ListBox1.SelectedItem) Then 
    MsgBox("Please pick an Item first.") 
    Exit Sub 
End If 
// Your Code after that 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    // Leave the Sub and Message the User, when there is no SelectedItem 
    If IsNothing(ListBox1.SelectedItem) Then 
     MsgBox("Please pick an Item first.") 
     Exit Sub 
    End If 
    // Code will only reach here, when there is a SelectedItem 
    ListBox2.Items.Add(ListBox1.SelectedItem) 
    ListBox1.Items.Remove(ListBox1.SelectedItem) 
End sub 
+0

Mein Ziel ist das Meldungsfeld zu haben scheint, wenn der Benutzer nur den Knopf drückt, ohne ein Element der Auswahl – shaggs

+0

Dank wurde das * end sub fehlt * – shaggs

+0

Froh, dass ich helfen konnte. Immer daran denken: Alles, was Sie öffnen, muss irgendwo geschlossen werden: If/End if, While/EndWhile, Funktion/End Function, Sub/End Sub, Wählen Sie Case/End Select, (...) – Luke