/// <summary> /// Create Sample SortOrders in descending order /// </summary> /// <param name="multipleSortOrders">Indicate whether sort orders contains more than one sort order structure</param> /// <returns>Return SortOrder array</returns> private SortOrder[] CreateSampleSortOrdersDescending(bool multipleSortOrders) { SortOrder[] sortOrders; if (!multipleSortOrders) { sortOrders = new SortOrder[1]; } else { sortOrders = new SortOrder[2]; } SortOrder sortOrder; // PidTagSenderName sortOrder.PropertyId = 0x0C1A; sortOrder.PropertyType = (ushort)0x001F; sortOrder.Order = 0x01; // Descending sortOrders[0] = sortOrder; if (multipleSortOrders) { // PidTagMessageDeliveryTime sortOrder.PropertyId = 0x0e06; sortOrder.PropertyType = 0x0040; sortOrder.Order = 0x01; // Descending sortOrders[1] = sortOrder; } return sortOrders; }
/// <summary> /// Create Sample SortOrders /// </summary> /// <returns>Return SortOrder array</returns> private SortOrder[] CreateSampleSortOrders() { SortOrder[] sortOrders = new SortOrder[2]; SortOrder sortOrder; // The tags are from CreateSampleContentsTablePropertyTags(), // which references MS-OXCTABL 4.2 // PidTagMessageDeliveryTime sortOrder.PropertyId = this.propertyDictionary[PropertyNames.PidTagMessageDeliveryTime].PropertyId; sortOrder.PropertyType = this.propertyDictionary[PropertyNames.PidTagMessageDeliveryTime].PropertyType; sortOrder.Order = (byte)Order.Ascending; sortOrders[0] = sortOrder; // PidTagInstID sortOrder.PropertyId = this.propertyDictionary[PropertyNames.PidTagInstID].PropertyId; sortOrder.PropertyType = this.propertyDictionary[PropertyNames.PidTagInstID].PropertyType; sortOrder.Order = (byte)Order.Descending; sortOrders[1] = sortOrder; return sortOrders; }
/// <summary> /// Create Sample SortOrders in ascending order /// </summary> /// <param name="multipleSortOrders">Indicate whether sort orders contains more than one sort order structure</param> /// <param name="isMaximumCategory">Indicate whether sort orders contains a sort order structure with the order set to MaximumCategory</param> /// <returns>Return SortOrder array</returns> private SortOrder[] CreateSampleSortOrdersAscending(bool multipleSortOrders, bool isMaximumCategory) { SortOrder[] sortOrders; if (!multipleSortOrders) { sortOrders = new SortOrder[1]; } else { sortOrders = new SortOrder[2]; } SortOrder sortOrder; // PidTagSenderName sortOrder.PropertyId = 0x0C1A; sortOrder.PropertyType = 0x001F; sortOrder.Order = 0x00; // Ascending sortOrders[0] = sortOrder; if (multipleSortOrders) { // PidTagMessageDeliveryTime sortOrder.PropertyId = 0x0e06; sortOrder.PropertyType = 0x0040; if (isMaximumCategory) { sortOrder.Order = 0x04; // MaximumCategory } else { sortOrder.Order = 0x00; // Ascending } sortOrders[1] = sortOrder; } return sortOrders; }