无法使用 IMAPX 获取电子邮件文件夹名称



我正在使用此代码获取电子邮件文件夹的列表:

Class emailFolder
    Public Property Title As String
End Class
Public Shared Function GetFolders() As List(Of emailFolder)
    Dim folder = New List(Of emailFolder)
    Dim foldername = client.Folders
    For Each parentFolder In foldername
        Dim parentPath = parentFolder.Path
        If parentFolder.HasChildren Then
            Dim subfolders = parentFolder.SubFolders
            For Each subfolder In subfolders
                Dim subPath = subfolder.Path
                folder.Add(New emailFolder With {.Title = parentFolder.Name})
            Next
        End If
    Next
    Return folder
End Function
Public sub btn_click handles Button1.click
ListView.ItemSource=GetFolders 

我不知道我的代码有什么问题,但是我在ListView中得到的项目(顺便说一句,我在WPF中(看起来像这样:

 MyApplication++emailfolder
 MyApplication++emailfolder
 MyApplication++emailfolder
 MyApplication++emailfolder

我在做什么错?

如果定义了ListViewItemTemplate,则可以定义ListViewItems的外观。

在下面的示例中,仅显示属性Title的内容:

<ListView>
    <ListView.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Title}" />
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

另一种方法是将ToString -Method的覆盖层添加到emailFolder -Class:

Class emailFolder
    Public Property Title As String
    Public Overrides Function ToString() As String
        Return Me.Title
    End Function
End Class

解决了问题。

只需要覆盖ToString ....完整代码:

   Class emailFolder
    Public Property Title As String
   Public Overrides Function ToString() As String
            Return Me.Title
        End Function
End Class
  Public Shared Function GetFolders() As List(Of emailFolder)
    Dim folder = New List(Of emailFolder)
    Dim foldername = client.Folders
    For Each parentFolder In foldername
        Dim parentPath = parentFolder.Path
        If parentFolder.HasChildren Then
            Dim subfolders = parentFolder.SubFolders
            For Each subfolder In subfolders
                Dim subPath = subfolder.Path
                folder.Add(New emailFolder With {.Title = parentFolder.Name})
            Next
        End If
    Next
    Return folder
End Function
Public sub btn_click handles Button1.click
ListView.ItemSource=GetFolders 

相关内容

最新更新