|
-
Aug 30th, 2005, 03:54 AM
#1
Thread Starter
Hyperactive Member
Outlook Folders don't GetNext
Hi,
I want to display the outlookfolders into a treeview.
So far I got this,
but the GetNext doesn't work and here it stays on Inbox...
The Treeview is 'T'
VB Code:
Private Sub OutlookFolders_Load()
Dim OutlApp As Outlook.Application
Dim oNS As Outlook.NameSpace
Dim oFolder As Outlook.MAPIFolder
OutlApp = CreateObject("Outlook.Application")
oNS = OutlApp.GetNamespace("MAPI")
oFolder = oNS.Folders.GetFirst
Dim tn As TreeNode
Do While Not oFolder Is Nothing
tn = New TreeNode
tn.Text = oFolder.Name
T.Nodes.Add(tn)
If Not oFolder.Folders.Count = 0 Then GetFolders(oFolder, tn)
oFolder = oNS.Folders.GetNext
Loop
End Sub
Private Sub GetFolders(ByVal F As Outlook.MAPIFolder, ByVal HN As TreeNode)
Dim tn As TreeNode
Dim oFolder As Outlook.MAPIFolder = F.Folders.GetFirst
Dim i As Integer
oFolder = F.Folders.GetFirst
For i = 0 To F.Folders.Count - 1
tn = New TreeNode
tn.Text = oFolder.Name
HN.Nodes.Add(tn)
GetFolders(oFolder, tn)
oFolder = F.Folders.GetNext
Next
End Sub
And I just want the folders.
I didn't thought it was so hard...
-
Sep 2nd, 2005, 05:17 AM
#2
Thread Starter
Hyperactive Member
Got some slution and it works...
T is the treeView...
VB Code:
Private m as Integer 'for the tag in the treenodes; 0 is the first nodes, 1 the second etc.
Private Sub FormOutlookFolders_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim OutlApp As Outlook.Application
Dim oNS As Outlook.NameSpace
Dim oFolder As Outlook.MAPIFolder
Dim InFolder As Outlook.Folders
Dim FirstFolder As Outlook.Folders
Dim FirstFolder2 As Outlook.Folders
OutlApp = CreateObject("Outlook.Application")
oNS = OutlApp.GetNamespace("MAPI")
FirstFolder = oNS.Folders
FirstFolder2 = oNS.Folders
oFolder = FirstFolder.GetFirst()
InFolder = oFolder.Folders
FirstFolder.GetFirst()
FirstFolder2.GetFirst()
m = 0
Dim tn As TreeNode
Do Until FirstFolder Is Nothing
Try
tn = New TreeNode
tn.Text = oFolder.Name
tn.Tag = m
T.Nodes.Add(tn)
If Not oFolder.Folders.Count = 0 Then GetFolders(InFolder, tn)
Again:
oFolder = FirstFolder2.GetNext()
If oFolder Is Nothing Then Exit Do
InFolder = FirstFolder.GetNext.Folders
Catch ex As Exception
GoTo Again
End Try
Loop
End Sub
Private Sub GetFolders(ByVal FirstFolder As Outlook.Folders, ByVal HN As TreeNode)
m += 1
Dim tn As TreeNode
Dim oFolder As Outlook.MAPIFolder = FirstFolder.GetFirst
Do Until oFolder Is Nothing
tn = New TreeNode
tn.Text = oFolder.Name
tn.Tag = m
HN.Nodes.Add(tn)
If Not oFolder.Folders.Count = 0 Then HaalFolders(FirstFolder.GetFirst.Folders, tn)
oFolder = FirstFolder.GetNext
Loop
m -= 1
End Sub
Anyone knows a better solution?
You see I got a 2 folder construction, maybe one to much,
but I don't know how.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|