I'm using ExchangeScheduleDataConnector to connect to Exchange 2010. The connection works just fine and I can see and edit appointments on the main calendar with no problems.
This user has multiple calendars though, and I want to see all of them.
Is there a way to retrieve all the calendars for a user?
Any help would be appreciated.
We're using Exchange 2010 and Visibility is stored locally but calendar groups follow the user account.
I can log on to any of the computers and/or owa and changes I make to the groups (except for visibility) are replicated to the clients.
I'm not sure if this is possible because I believe the group and visibility information is stored by Outlook, not Exchange. I believe this is the case because if I create a few calendars and group and show/hide them in Outlook, then open my email web access, I see a different set of calendars shown.
CollectionChangedEvent works fine. Thanks!
Let me restate my other question.
I understand how to use Infragistics CalendarGroups and your example above is quite clear. I'm actually wanting something different.
The user has multiple calendars that are grouped in exchange (or at least they show grouped in Outlook). While I can retrieve all the calendars from exchange just fine (thanks to your previous help!), and can also split them into as many groups as I want, I haven't yet found a way to detect how exchange has them grouped.
Any Ideas?
You could hook the exchange connector's ResourceItems.CollectionChanged event. This will tell you when resources (users) have been created, had their calendars downloaded, and been added to the ResourceItems collection. Then you could do something like this to add all downloaded calendars into a group:
void ResourceItems_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e){ int count = this.ExchangeConnector.ResourceItems.Count; if (count > 0) { this.DataManager.CalendarGroups.Clear();
CalendarGroup group = new CalendarGroup(); foreach (Resource resource in this.ExchangeConnector.ResourceItems) { foreach (ResourceCalendar resourceCalendar in resource.Calendars) group.Calendars.Add(resourceCalendar); }
this.DataManager.CalendarGroups.Add(group); }}
I'm also not finding the exchange calendar groups.