IUccReadOnlyPropertyCollection Interface

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

Represents a read-only property collection.

Namespace: Microsoft.Office.Interop.UccApi
Assembly: Microsoft.Office.Interop.UccApi (in microsoft.office.interop.uccapi.dll)

Syntax

'Declaration
Public Interface IUccReadOnlyPropertyCollection
    Inherits IUccCollection, IDispatch, IUnknown
public interface IUccReadOnlyPropertyCollection : IUccCollection, IDispatch, IUnknown
public interface class IUccReadOnlyPropertyCollection : IUccCollection, IDispatch, IUnknown
public interface IUccReadOnlyPropertyCollection extends IUccCollection, IDispatch, 
    IUnknown
public interface IUccReadOnlyPropertyCollection extends IUccCollection, IDispatch, 
    IUnknown

Remarks

Each element of the collection is an IUccProperty instance. A property can be identified by a number (ID) or a string (Name). The latter is also known as a named property.

The read-only property collection implements IUccCollection and exposes additional methods for querying the existence of a collection item as well as accessing individual collection items. The read-only property collection exposes an enumerator, giving a client the ability to iterate over the read-only collection.

A read-only property collection interface instance can only be obtained from a property which returns an object of this type. Many Unified Communications Client API interfaces expose a Properties property for this purpose.

Win32 COM/C++ Syntax

interface IUccReadOnlyPropertyCollection : IUccCollection

Example

The following example handles the OnGetConferenceList event raised by a conference manager session. The event data parameter (pEventData) exposes a read-only property collection with the Properties property. The example must determine if a given property has been added to the read-only property collection before accessing it. In this case, the example determines that the UCC_CONFERENCE_MANAGER_OPERATION_COMPLETED_EVENT_PROPERTY.UCCCMOCEP_CONFERENCE_LIST property was set by the object that raised the event.

The read-only property collection contains a collection of IUccProperty instances. Calling into get_Property returns a IUccProperty instance whose Value can be cast to the IUccCollection interface.

void _IUccConferenceManagerSessionEvents.OnGetConferenceList(
   UccConferenceManagerSession pEventSource,
   IUccOperationProgressEvent pEventData)
{
   IUccCollection myConferences = null;
   if (pEventData.IsComplete == true)
   {
       conferences = new List<string>();
       IUccReadOnlyPropertyCollection rp = pEventData.Properties;
       if (rp.IsPropertySet((int)UCC_CONFERENCE_MANAGER_OPERATION_COMPLETED_EVENT_PROPERTY.UCCCMOCEP_CONFERENCE_LIST))
       {
          IUccProperty p = rp.get_Property((int)UCC_CONFERENCE_MANAGER_OPERATION_COMPLETED_EVENT_PROPERTY.UCCCMOCEP_CONFERENCE_LIST);
          myConferences = p.Value as IUccCollection;
       }
       if (myConferences != null && myConferences.Count > 0)
       {
          foreach (IUccProperty thisConference in myConferences)
          {
              UccConferenceInformation ci = null;
              ci = thisConference.Value as UccConferenceInformation; 
              if (ci != null && ci.ConferenceUri != null)
                  conferences.Add(ci.ConferenceUri.UserAtHost);
              }
           }
       }
   }
}

Platforms

Development Platforms

Windows XP Professional with Service Pack 2 (SP2), Windows Server 2000 with Service Pack 4, Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition

Target Platforms

See Also

Reference

IUccReadOnlyPropertyCollection Members
Microsoft.Office.Interop.UccApi Namespace