Utilisation des tableaux pour énumérer efficacement les éléments d’un dossier
Cet exemple montre comment énumérer efficacement les éléments dans un objet Folder à l’aide de la méthode GetArray(Int32).
Exemple
Remarque
L’exemple de code suivant est un extrait de programmation d’Applications pour Microsoft Office Outlook 2007.
Dans l’exemple de code suivant, DemoGetArrayForTable obtient un objet Table d’un objet Folder à l’aide de la méthode GetTable(Object, Object). DemoGetArrayForTable utilise ensuite la méthode GetArray pour renvoyer un objet Array qui contient des éléments pour chaque ligne du tableau. L’objet Array renvoyé est un tableau à deux dimensions qui représente un ensemble de valeurs de ligne et de colonne issues de l’objet Table. Il s’agit d’un tableau de base zéro, et non de base un comme c’est le cas des collections Outlook. Une fois que l’objet Array est obtenu, le code utilise une boucle for pour énumérer le contenu du tableau.
Si vous utilisez Visual Studio pour tester cet exemple de code, vous devez d’abord ajouter une référence au composant Bibliothèque d’objets Microsoft Outlook 15.0 et spécifier la variable lorsque vous importez l’espace de noms Microsoft.Office.Interop.Outlook. L’instruction using ne doit pas se produire juste avant les fonctions de l’exemple de code, mais doit être ajoutée avant la déclaration publique. La ligne de code suivante montre comment effectuer l’importation et l’affectation dans C#.
using Outlook = Microsoft.Office.Interop.Outlook;
private void DemoGetArrayForTable()
{
// Obtain Inbox
Outlook.Folder folder =
Application.Session.GetDefaultFolder(
Outlook.OlDefaultFolders.olFolderInbox)
as Outlook.Folder;
Outlook.Table table =
folder.GetTable("", Outlook.OlTableContents.olUserItems);
Array tableArray = table.GetArray(table.GetRowCount()) as Array;
for (int i = 0; i <= tableArray.GetUpperBound(0); i++)
{
for (int j = 0; j <= tableArray.GetUpperBound(1); j++)
{
Debug.WriteLine(tableArray.GetValue(i, j));
}
}
}