[OpenPop.NET] MessageNumber aus Sub in TextBox wiedergeben

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    [OpenPop.NET] MessageNumber aus Sub in TextBox wiedergeben

    Hey Com,

    ich wollte die MessageNumber aus einer Sub in einer TextBox wiedergeben.Mein Code für das Ermitteln der Number:

    VB.NET-Quellcode

    1. Private Shared Function GetMessageNumberFromSelectedNode(ByVal node As TreeNode) As Integer
    2. If node Is Nothing Then
    3. Throw New ArgumentNullException("node")
    4. End If
    5. If TypeOf node.Tag Is Integer Then
    6. Return CInt(node.Tag)
    7. End If
    8. Return GetMessageNumberFromSelectedNode(node.Parent)
    9. End Function


    Der Code für die TreeView, Kommentar da wo es hin soll:

    VB.NET-Quellcode

    1. Private Sub listMessages_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles listMessages.AfterSelect
    2. messageTextBox.Visible = True
    3. senderBox.Visible = True
    4. senderLbl.Visible = True
    5. Dim message As Message = messages(GetMessageNumberFromSelectedNode(listMessages.SelectedNode))
    6. senderBox.Text = message.Headers.From.MailAddress.Address
    7. msgNumb.Text = 'HIER SOLL DIE MESSAGENUMBER ERSCHEINEN
    8. If TypeOf listMessages.SelectedNode.Tag Is MessagePart Then
    9. Dim selectedMessagePart As MessagePart = DirectCast(listMessages.SelectedNode.Tag, MessagePart)
    10. If selectedMessagePart.IsText Then
    11. messageTextBox.Text = selectedMessagePart.GetBodyAsText()
    12. Else
    13. Bugtracker.RichTextBox1.Text = Bugtracker.RichTextBox1.Text & vbCrLf & "$invalid:mail_text/body"
    14. messageTextBox.Text = "<<ThunderMail>> Cannot show this part of the email. It is not text <<ThunderMail>>"
    15. End If
    16. Else
    17. Dim plainTextPart As MessagePart = message.FindFirstPlainTextVersion()
    18. If plainTextPart IsNot Nothing Then
    19. messageTextBox.Text = plainTextPart.GetBodyAsText()
    20. Else
    21. Dim textVersions As List(Of MessagePart) = message.FindAllTextVersions()
    22. If textVersions.Count >= 1 Then
    23. messageTextBox.Text = textVersions(0).GetBodyAsText()
    24. Else
    25. Bugtracker.RichTextBox1.Text = Bugtracker.RichTextBox1.Text & vbCrLf & "$invalid:mail_text/body"
    26. messageTextBox.Text = "<<ThunderMail>> Cannot show this part of the email. It is not text <<ThunderMail>>"
    27. End If
    28. End If
    29. End If
    30. End Sub


    Wie kann ich das machen ?

    Gruß iEi
    So:

    VB.NET-Quellcode

    1. Dim nb = GetMessageNumberFromSelectedNode(listMessages.SelectedNode)
    2. Dim message As Message = messages(nb)
    3. senderBox.Text = message.Headers.From.MailAddress.Address
    4. msgNumb.Text = nb.ToString
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!