public static void Run() { // The path to the documents directory. string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName); // ExStart:ReadGroupDefinitionData Project project = new Project(dataDir + "ReadGroupDefinitionData.mpp"); Console.WriteLine("Task Groups Count: " + project.TaskGroups.Count); Group taskGroup = project.TaskGroups.ToList()[1]; Console.WriteLine("Group Name:", taskGroup.Name); Console.WriteLine("Group Criteria count: " + taskGroup.GroupCriteria.Count); Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************"); GroupCriterion criterion = taskGroup.GroupCriteria.ToList()[0]; Console.WriteLine("Criterion Field: " + criterion.Field.ToString()); Console.WriteLine("Criterion GroupOn: " + criterion.GroupOn.ToString()); Console.WriteLine("Criterion Cell Color: " + criterion.CellColor); Console.WriteLine("Criterion Pattern: " + criterion.Pattern.ToString()); if (taskGroup == criterion.ParentGroup) { Console.WriteLine("Parent Group is equval to task Group."); } Console.WriteLine("\n*********** Retreivnig Criterion's Font Information ***********"); Console.WriteLine("Font Name: " + criterion.Font.Name); Console.WriteLine("Font Size: " + criterion.Font.Size); Console.WriteLine("Font Style: " + criterion.Font.Style); Console.WriteLine("Ascending/Dscending: " + criterion.Ascending); // ExEnd:ReadGroupDefinitionData }
public void WorkWithGroupCriterionCollection() { // ExStart:WorkWithGroupCriterionCollection // ExFor: GroupCriterionCollection // ExFor: GroupCriterionCollection.Add(GroupCriterion) // ExFor: GroupCriterionCollection.Clear // ExFor: GroupCriterionCollection.Contains(GroupCriterion) // ExFor: GroupCriterionCollection.CopyTo(GroupCriterion[],Int32) // ExFor: GroupCriterionCollection.Count // ExFor: GroupCriterionCollection.GetEnumerator // ExFor: GroupCriterionCollection.IsReadOnly // ExFor: GroupCriterionCollection.ParentGroup // ExFor: GroupCriterionCollection.Remove(GroupCriterion) // ExFor: GroupCriterionCollection.ToList // ExSummary: Shows how to work with a collection of group criterion. var project = new Project(DataDir + "ReadGroupDefinitionData.mpp"); var group = project.TaskGroups.ToList()[0]; // iterate over group criterion Console.WriteLine("Print group criteria of {0} group: ", group.GroupCriteria.ParentGroup.Name); Console.WriteLine("Group criterion count: " + group.GroupCriteria.Count); foreach (var criterion in group.GroupCriteria) { Console.WriteLine("Index: " + criterion.Index); Console.WriteLine("Field: " + criterion.Field); Console.WriteLine("Group On: " + criterion.GroupOn); Console.WriteLine(); } group.GroupCriteria.Clear(); if (!group.GroupCriteria.IsReadOnly) { List <GroupCriterion> groupCriteria = group.GroupCriteria.ToList(); foreach (var criterion in groupCriteria) { group.GroupCriteria.Remove(criterion); } } var criterionToAdd = new GroupCriterion { Ascending = true, Field = Field.TaskActive }; if (!group.GroupCriteria.Contains(criterionToAdd)) { group.GroupCriteria.Add(criterionToAdd); } // copy criteria to other group var otherGroup = project.TaskGroups.ToList()[0]; var criteria = new GroupCriterion[group.GroupCriteria.Count]; group.GroupCriteria.CopyTo(criteria, 0); foreach (var criterion in criteria) { otherGroup.GroupCriteria.Add(criterion); } // ExEnd:WorkWithGroupCriterionCollection }