[débutants]gestion de la liste des contacts pocket outlook

Description

Cette source est un simple exemple pour gérer la liste des contacts outlook.
elle permet de lire les catégories et la liste des contacts selon la catégorie,

Tout réside dans le namespace
Microsoft.WindowsMobile.PocketOutlook

J'ai simplifier les choses,
Vous pouvez ajouter d'autres fonctionnalités (Ajout, Suppression, Modification ...) et c'est tres simple, mais moi personnellement j'aime pas les trucs de gestions
donc j'ai seulement ajouter la fonctionnalité de lister les contacts et leurs catégories.
Il faut ajouter une référence vers l'assembly
Microsoft.WindowsMobile.PocketOutlook

Source / Exemple :


using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using Microsoft.WindowsMobile.PocketOutlook;

//Il faut ajouter une référence vers l'assembly
//Microsoft.WindowsMobile.PocketOutlook

namespace ListeContacts
{
    public partial class frmMain : Form
    {
        public frmMain()
        {
            InitializeComponent();
        }
        OutlookSession session = new OutlookSession();
        private void mnuExit_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }
        
        private void frmMain_Load(object sender, EventArgs e)
        {
            LoadCategories();
        }
        public void LoadCategories()
        {
            List<string> categories = new List<string>();
            ContactCollection contacts = session.Contacts.Items;

            foreach (Contact contact in contacts)
            {
                categories.AddRange(contact.Categories.Split(", ".ToCharArray()));
            }
            // On élémine les entrées en double.
            var uniqueCategories = categories.Distinct<string>();
            // Remplissage de la liste.
            foreach (string item in uniqueCategories)
            {
                if (item == string.Empty) continue;
                lstCategories.Items.Add(item);
            }
            if (lstCategories.Items.Count !=0)
                lstCategories.SelectedIndex = 0;
        }
        public void LoadContacts(string category)
        {
            lstContacts.Items.Clear();
            ContactCollection contacts = session.Contacts.Items;
            foreach (Contact contact in contacts)
            { 
                // Pour Afficher d'autres informations, vous pouver consulter l'msdn pour
                // pour les autres informations sur un contact.
                if (contact.Categories.Contains(category))
                    lstContacts.Items.Add(contact.FirstName + contact.LastName);
            }
        }

        private void lstCategories_SelectedIndexChanged(object sender, EventArgs e)
        {
            LoadContacts(lstCategories.SelectedItem.ToString());
        }

        private void mnuAbout_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Exemple Contacts Pocket Outlook\n Exemple créé par Boutemine Oualid\n boutemine.walid@hotmail.com"
                , "A Propos", MessageBoxButtons.OK, MessageBoxIcon.None, MessageBoxDefaultButton.Button1);
        }
    }
}

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.