MailAdressCollection.Union() funktioniert nicht

koppelschoof

Mitglied
Hallo ich ein Problem mit der Union() Methode der MailAdressCollection. Undzwar wenn ich eine weitere AdressCollection anfügen will. Wird es gelinde gesagt nicht ausgeführt.

Visual Basic:
    Private Sub btnAdr_Add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdr_Add.Click
        Dim newAdr As New MailAddressCollection()
        'Add_MailAdr ist ein Form aus dem ich die neuen Adressen hole
        'Der Parameter wird ByRef übergeben
        Dim adrDia As New Add_MailAdr(newAdr)
        adrDia.ShowDialog()
        adrDia.Dispose()
        'mailTo ist meine Adressliste, 
        'die die neuen Adressen aus newAdr bekommen soll
        mailTo.Union(newAdr)

        'Zur Darstellung wird das in einer ListBox angezeigt
        libAdresses.Items.Clear()
        For Each adr In mailTo
            libAdresses.Items.Add(adr)
        Next
    End Sub

ich habs auch schon mit mailTo = mailTo.Union(newAdr) versucht - das hat aber nur ne Exception geworfen:
Code:
System.InvalidCastException wurde nicht behandelt.
  Message="Das Objekt des Typs <UnionIterator>d__87`1[System.Net.Mail.MailAddress] kann nicht in Typ System.Net.Mail.MailAddressCollection umgewandelt werden."

EDIT:
Habs jetzt anders gelöst:
Visual Basic:
For Each adr As MailAddress In newAdr
            If Not mailTo.Contains(adr) Then mailTo.Add(adr)
        Next
mit Union() wärs zwar schöner gewesen, aber so gehts ja auch.
 
Zuletzt bearbeitet:
Zurück