diff --git a/english/net/aspose.tasks.saving/htmlsaveoptions/_index.md b/english/net/aspose.tasks.saving/htmlsaveoptions/_index.md
index cac51c8be6..21750e20ca 100644
--- a/english/net/aspose.tasks.saving/htmlsaveoptions/_index.md
+++ b/english/net/aspose.tasks.saving/htmlsaveoptions/_index.md
@@ -58,7 +58,7 @@ public class HtmlSaveOptions : SaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| override [UseGradientBrush](../../aspose.tasks.saving/htmlsaveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether to use gradient brush when rendering project layout. Currently using of gradient brush is not supported when rendering to HTML. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](../saveoptions/viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.saving/imagesaveoptions/_index.md b/english/net/aspose.tasks.saving/imagesaveoptions/_index.md
index 7cf6d25447..ca4476c15b 100644
--- a/english/net/aspose.tasks.saving/imagesaveoptions/_index.md
+++ b/english/net/aspose.tasks.saving/imagesaveoptions/_index.md
@@ -51,7 +51,7 @@ public class ImageSaveOptions : SaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [TiffCompression](../../aspose.tasks.saving/imagesaveoptions/tiffcompression/) { get; set; } | Gets or sets the type of compression to apply when saving generated images to the TIFF format. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| virtual [UseGradientBrush](../../aspose.tasks.saving/saveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether gradient brush should be used when rendering Gantt Chart. |
diff --git a/english/net/aspose.tasks.saving/imagesaveoptions/defaultfontname/_index.md b/english/net/aspose.tasks.saving/imagesaveoptions/defaultfontname/_index.md
index f05bf37eb2..3d8fb942d4 100644
--- a/english/net/aspose.tasks.saving/imagesaveoptions/defaultfontname/_index.md
+++ b/english/net/aspose.tasks.saving/imagesaveoptions/defaultfontname/_index.md
@@ -24,7 +24,6 @@ var options = new ImageSaveOptions(SaveFileFormat.Png);
options.StartDate = project.Get(Prj.StartDate).AddDays(-3);
options.EndDate = project.Get(Prj.FinishDate);
options.MarkCriticalTasks = true;
-options.LegendOnEachPage = false;
options.DefaultFontName = "Segoe UI Black";
options.UseProjectDefaultFont = false;
options.PageSize = PageSize.Letter;
diff --git a/english/net/aspose.tasks.saving/imagesaveoptions/useprojectdefaultfont/_index.md b/english/net/aspose.tasks.saving/imagesaveoptions/useprojectdefaultfont/_index.md
index 1b711b9a72..47e76c00ed 100644
--- a/english/net/aspose.tasks.saving/imagesaveoptions/useprojectdefaultfont/_index.md
+++ b/english/net/aspose.tasks.saving/imagesaveoptions/useprojectdefaultfont/_index.md
@@ -28,7 +28,6 @@ var options = new ImageSaveOptions(SaveFileFormat.Png);
options.StartDate = project.Get(Prj.StartDate).AddDays(-3);
options.EndDate = project.Get(Prj.FinishDate);
options.MarkCriticalTasks = true;
-options.LegendOnEachPage = false;
options.DefaultFontName = "Segoe UI Black";
options.UseProjectDefaultFont = false;
options.PageSize = PageSize.Letter;
diff --git a/english/net/aspose.tasks.saving/mppsaveoptions/clearvba/_index.md b/english/net/aspose.tasks.saving/mppsaveoptions/clearvba/_index.md
index 91f54f7326..5e1765b8f0 100644
--- a/english/net/aspose.tasks.saving/mppsaveoptions/clearvba/_index.md
+++ b/english/net/aspose.tasks.saving/mppsaveoptions/clearvba/_index.md
@@ -14,6 +14,15 @@ Gets or sets a value indicating whether to remove existing VBA macros data when
public bool ClearVba { get; set; }
```
+## Examples
+
+Shows how to remove VBA macros from MPP file.
+
+```csharp
+var project = new Project(DataDir + "VbaProject.mpp");
+project.Save(OutDir + "Vba.cleared.mpp", new MPPSaveOptions() { ClearVba = true });
+```
+
### See Also
* class [MPPSaveOptions](../)
diff --git a/english/net/aspose.tasks.saving/mppsaveoptions/writegroups/_index.md b/english/net/aspose.tasks.saving/mppsaveoptions/writegroups/_index.md
index c654178966..6e9c6fc9f7 100644
--- a/english/net/aspose.tasks.saving/mppsaveoptions/writegroups/_index.md
+++ b/english/net/aspose.tasks.saving/mppsaveoptions/writegroups/_index.md
@@ -14,6 +14,72 @@ Gets or sets a value indicating whether to write groups data when saving a proje
public bool WriteGroups { get; set; }
```
+## Examples
+
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [MPPSaveOptions](../)
diff --git a/english/net/aspose.tasks.saving/pdfsaveoptions/_index.md b/english/net/aspose.tasks.saving/pdfsaveoptions/_index.md
index 4793c45e9a..6a40dd7fa4 100644
--- a/english/net/aspose.tasks.saving/pdfsaveoptions/_index.md
+++ b/english/net/aspose.tasks.saving/pdfsaveoptions/_index.md
@@ -53,7 +53,7 @@ public class PdfSaveOptions : SaveOptions
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
| [TextCompression](../../aspose.tasks.saving/pdfsaveoptions/textcompression/) { get; set; } | Gets or sets a compression type to be used for all content streams except images. Default is Flate. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| virtual [UseGradientBrush](../../aspose.tasks.saving/saveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether gradient brush should be used when rendering Gantt Chart. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](../saveoptions/viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.saving/printoptions/_index.md b/english/net/aspose.tasks.saving/printoptions/_index.md
index e6637f68da..2445565e15 100644
--- a/english/net/aspose.tasks.saving/printoptions/_index.md
+++ b/english/net/aspose.tasks.saving/printoptions/_index.md
@@ -44,7 +44,7 @@ public class PrintOptions : SaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| virtual [UseGradientBrush](../../aspose.tasks.saving/saveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether gradient brush should be used when rendering Gantt Chart. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](../saveoptions/viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.saving/saveoptions/_index.md b/english/net/aspose.tasks.saving/saveoptions/_index.md
index 397607ee77..f6ef002c48 100644
--- a/english/net/aspose.tasks.saving/saveoptions/_index.md
+++ b/english/net/aspose.tasks.saving/saveoptions/_index.md
@@ -38,7 +38,7 @@ public abstract class SaveOptions : SimpleSaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](./timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| virtual [UseGradientBrush](../../aspose.tasks.saving/saveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether gradient brush should be used when rendering Gantt Chart. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](./viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.saving/saveoptions/legendoneachpage/_index.md b/english/net/aspose.tasks.saving/saveoptions/legendoneachpage/_index.md
deleted file mode 100644
index 9ca07dd081..0000000000
--- a/english/net/aspose.tasks.saving/saveoptions/legendoneachpage/_index.md
+++ /dev/null
@@ -1,38 +0,0 @@
----
-title: LegendOnEachPage
-second_title: Aspose.Tasks for .NET API Reference
-description: Gets or sets a value indicating whether legend should be shown on each page Default value is TRUE.
-type: docs
-weight: 90
-url: /net/aspose.tasks.saving/saveoptions/legendoneachpage/
----
-## SaveOptions.LegendOnEachPage property
-
-Gets or sets a value indicating whether legend should be shown on each page (Default value is TRUE).
-
-```csharp
-public bool LegendOnEachPage { get; set; }
-```
-
-### Examples
-
-Shows how to hide page legends.
-
-```csharp
-var project = new Project(DataDir + "CreateProject2.mpp");
-SaveOptions options = new PdfSaveOptions
-{
- // Set the LegendOnEachPage property to false to hide legends
- LegendOnEachPage = false
-};
-
-project.Save(OutDir + "HideLegendsDuringSave_out.pdf", options);
-```
-
-### See Also
-
-* class [SaveOptions](../../saveoptions)
-* namespace [Aspose.Tasks.Saving](../../saveoptions)
-* assembly [Aspose.Tasks](../../../)
-
-
diff --git a/english/net/aspose.tasks.saving/saveoptions/textstyles/_index.md b/english/net/aspose.tasks.saving/saveoptions/textstyles/_index.md
index d1be0547e6..6deb08085f 100644
--- a/english/net/aspose.tasks.saving/saveoptions/textstyles/_index.md
+++ b/english/net/aspose.tasks.saving/saveoptions/textstyles/_index.md
@@ -1,19 +1,23 @@
---
title: SaveOptions.TextStyles
second_title: Aspose.Tasks for .NET API Reference
-description: SaveOptions property. Gets or sets the list of the instances of the TextStyle class that appear in project view
+description: SaveOptions property. Gets or sets the list of text styles that applied during rendering of a project view
type: docs
weight: 180
url: /net/aspose.tasks.saving/saveoptions/textstyles/
---
## SaveOptions.TextStyles property
-Gets or sets the list of the instances of the [`TextStyle`](../../../aspose.tasks.visualization/textstyle/) class that appear in project view.
+Gets or sets the list of text styles that applied during rendering of a project view.
```csharp
public List TextStyles { get; set; }
```
+## Remarks
+
+These styles override styles defined in GanttCharView.TextStyles.
+
## Examples
Shows how to use save options' text styles which are used to style different text items in a project.
diff --git a/english/net/aspose.tasks.saving/svgoptions/_index.md b/english/net/aspose.tasks.saving/svgoptions/_index.md
index 2fd402459f..0409c85840 100644
--- a/english/net/aspose.tasks.saving/svgoptions/_index.md
+++ b/english/net/aspose.tasks.saving/svgoptions/_index.md
@@ -45,7 +45,7 @@ public class SvgOptions : SaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| override [UseGradientBrush](../../aspose.tasks.saving/svgoptions/usegradientbrush/) { get; set; } | Determines whether to use gradient brush when rendering project layout. Currently using of gradient brush is not supported for rendering to SVG. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](../saveoptions/viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.saving/xamloptions/_index.md b/english/net/aspose.tasks.saving/xamloptions/_index.md
index 6a958734ff..d73ed5e310 100644
--- a/english/net/aspose.tasks.saving/xamloptions/_index.md
+++ b/english/net/aspose.tasks.saving/xamloptions/_index.md
@@ -44,7 +44,7 @@ public class XamlOptions : SaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| virtual [UseGradientBrush](../../aspose.tasks.saving/saveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether gradient brush should be used when rendering Gantt Chart. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](../saveoptions/viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.saving/xpsoptions/_index.md b/english/net/aspose.tasks.saving/xpsoptions/_index.md
index 25a5c0c9f9..c87deb56ab 100644
--- a/english/net/aspose.tasks.saving/xpsoptions/_index.md
+++ b/english/net/aspose.tasks.saving/xpsoptions/_index.md
@@ -45,7 +45,7 @@ public class XpsOptions : SaveOptions
| [StartDate](../../aspose.tasks.saving/saveoptions/startdate/) { get; set; } | Gets or sets the date to start rendering from. |
| [TasksComparer](../../aspose.tasks.saving/simplesaveoptions/taskscomparer/) { get; set; } | Gets or sets the comparer to sort tasks on Gantt chart and Task Sheet chart. |
| [TasksFilter](../../aspose.tasks.saving/simplesaveoptions/tasksfilter/) { get; set; } | Gets or sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts. |
-| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of the instances of the [`TextStyle`](../../aspose.tasks.visualization/textstyle/) class that appear in project view. |
+| [TextStyles](../../aspose.tasks.saving/saveoptions/textstyles/) { get; set; } | Gets or sets the list of text styles that applied during rendering of a project view. |
| [Timescale](../../aspose.tasks.saving/saveoptions/timescale/) { get; set; } | Gets or sets the [`Timescale`](../saveoptions/timescale/) value which is used to control how timescale (if present) is rendered when project is saved to graphical format. |
| virtual [UseGradientBrush](../../aspose.tasks.saving/saveoptions/usegradientbrush/) { get; set; } | Gets or sets a value indicating whether gradient brush should be used when rendering Gantt Chart. |
| [View](../../aspose.tasks.saving/saveoptions/view/) { get; set; } | Gets or sets a list of the view columns to render ([`GanttChartColumn`](../../aspose.tasks.visualization/ganttchartcolumn/)). If not set then task ids, task names, start and finish are rendered only. If both View and [`ViewSettings`](../saveoptions/viewsettings/) properties are set, columns from View overrides columns from ViewSettings. |
diff --git a/english/net/aspose.tasks.visualization/timescaletier/_index.md b/english/net/aspose.tasks.visualization/timescaletier/_index.md
index 4105764d17..162c4d1fa2 100644
--- a/english/net/aspose.tasks.visualization/timescaletier/_index.md
+++ b/english/net/aspose.tasks.visualization/timescaletier/_index.md
@@ -29,6 +29,7 @@ public sealed class TimescaleTier
| [Count](../../aspose.tasks.visualization/timescaletier/count/) { get; set; } | Gets or sets the time unit interval in which to show labels for the tier. The default value is 1. |
| [DateTimeConverter](../../aspose.tasks.visualization/timescaletier/datetimeconverter/) { get; set; } | Gets or sets a callback function for handling rendering date tick in this tier. |
| [Label](../../aspose.tasks.visualization/timescaletier/label/) { get; set; } | Gets or sets date label [`DateLabel`](../datelabel/) for the timescale tier. |
+| [RenderLabelOnEachPage](../../aspose.tasks.visualization/timescaletier/renderlabeloneachpage/) { get; set; } | Gets or sets flag that defines whether date labels should be rendered on each page when a time period spans over several pages. If value is 'true', when time period spans over several pages, date labels for the period are rendered on each page. If values is 'false', date label is rendered only once according to a value of [`Alignment`](./alignment/) property. |
| [ShowTicks](../../aspose.tasks.visualization/timescaletier/showticks/) { get; set; } | Gets or sets a value indicating whether whether to show tick marks that separate time periods in the tier. |
| [Unit](../../aspose.tasks.visualization/timescaletier/unit/) { get; set; } | Gets or sets timescale unit [`TimescaleUnit`](../timescaleunit/) for the timescale tier. The default value is [`Days`](../timescaleunit/). |
| [UsesFiscalYear](../../aspose.tasks.visualization/timescaletier/usesfiscalyear/) { get; set; } | Gets or sets a value indicating whether to base the tier labels on the fiscal year. |
diff --git a/english/net/aspose.tasks.visualization/timescaletier/renderlabeloneachpage/_index.md b/english/net/aspose.tasks.visualization/timescaletier/renderlabeloneachpage/_index.md
new file mode 100644
index 0000000000..ce77599ecd
--- /dev/null
+++ b/english/net/aspose.tasks.visualization/timescaletier/renderlabeloneachpage/_index.md
@@ -0,0 +1,27 @@
+---
+title: TimescaleTier.RenderLabelOnEachPage
+second_title: Aspose.Tasks for .NET API Reference
+description: TimescaleTier property. Gets or sets flag that defines whether date labels should be rendered on each page when a time period spans over several pages. If value is true when time period spans over several pages date labels for the period are rendered on each page. If values is false date label is rendered only once according to a value of Alignment property
+type: docs
+weight: 60
+url: /net/aspose.tasks.visualization/timescaletier/renderlabeloneachpage/
+---
+## TimescaleTier.RenderLabelOnEachPage property
+
+Gets or sets flag that defines whether date labels should be rendered on each page when a time period spans over several pages. If value is 'true', when time period spans over several pages, date labels for the period are rendered on each page. If values is 'false', date label is rendered only once according to a value of [`Alignment`](../alignment/) property.
+
+```csharp
+public bool RenderLabelOnEachPage { get; set; }
+```
+
+## Remarks
+
+Doesn't have the equivalent in MS Project.
+
+### See Also
+
+* class [TimescaleTier](../)
+* namespace [Aspose.Tasks.Visualization](../../timescaletier/)
+* assembly [Aspose.Tasks](../../../)
+
+
diff --git a/english/net/aspose.tasks.visualization/timescaletier/showticks/_index.md b/english/net/aspose.tasks.visualization/timescaletier/showticks/_index.md
index 091373ca31..283336c423 100644
--- a/english/net/aspose.tasks.visualization/timescaletier/showticks/_index.md
+++ b/english/net/aspose.tasks.visualization/timescaletier/showticks/_index.md
@@ -3,7 +3,7 @@ title: TimescaleTier.ShowTicks
second_title: Aspose.Tasks for .NET API Reference
description: TimescaleTier property. Gets or sets a value indicating whether whether to show tick marks that separate time periods in the tier
type: docs
-weight: 60
+weight: 70
url: /net/aspose.tasks.visualization/timescaletier/showticks/
---
## TimescaleTier.ShowTicks property
diff --git a/english/net/aspose.tasks.visualization/timescaletier/unit/_index.md b/english/net/aspose.tasks.visualization/timescaletier/unit/_index.md
index 057044756b..75eac0a79a 100644
--- a/english/net/aspose.tasks.visualization/timescaletier/unit/_index.md
+++ b/english/net/aspose.tasks.visualization/timescaletier/unit/_index.md
@@ -3,7 +3,7 @@ title: TimescaleTier.Unit
second_title: Aspose.Tasks for .NET API Reference
description: TimescaleTier property. Gets or sets timescale unit TimescaleUnit for the timescale tier. The default value is Days
type: docs
-weight: 70
+weight: 80
url: /net/aspose.tasks.visualization/timescaletier/unit/
---
## TimescaleTier.Unit property
diff --git a/english/net/aspose.tasks.visualization/timescaletier/usesfiscalyear/_index.md b/english/net/aspose.tasks.visualization/timescaletier/usesfiscalyear/_index.md
index 5200a308af..d690f6127c 100644
--- a/english/net/aspose.tasks.visualization/timescaletier/usesfiscalyear/_index.md
+++ b/english/net/aspose.tasks.visualization/timescaletier/usesfiscalyear/_index.md
@@ -3,7 +3,7 @@ title: TimescaleTier.UsesFiscalYear
second_title: Aspose.Tasks for .NET API Reference
description: TimescaleTier property. Gets or sets a value indicating whether to base the tier labels on the fiscal year
type: docs
-weight: 80
+weight: 90
url: /net/aspose.tasks.visualization/timescaletier/usesfiscalyear/
---
## TimescaleTier.UsesFiscalYear property
diff --git a/english/net/aspose.tasks/group/_index.md b/english/net/aspose.tasks/group/_index.md
index 828d5c1d76..2d5782cca5 100644
--- a/english/net/aspose.tasks/group/_index.md
+++ b/english/net/aspose.tasks/group/_index.md
@@ -48,6 +48,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
@@ -70,6 +71,70 @@ foreach (var criterion in group.GroupCriteria)
}
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* namespace [Aspose.Tasks](../../aspose.tasks/)
diff --git a/english/net/aspose.tasks/group/group/_index.md b/english/net/aspose.tasks/group/group/_index.md
index 1c52fd36c2..d68ba91dec 100644
--- a/english/net/aspose.tasks/group/group/_index.md
+++ b/english/net/aspose.tasks/group/group/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
@@ -51,6 +52,70 @@ foreach (var criterion in group.GroupCriteria)
}
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [Group](../)
diff --git a/english/net/aspose.tasks/group/groupassignments/_index.md b/english/net/aspose.tasks/group/groupassignments/_index.md
index bfe9a0b85d..27b163881d 100644
--- a/english/net/aspose.tasks/group/groupassignments/_index.md
+++ b/english/net/aspose.tasks/group/groupassignments/_index.md
@@ -14,6 +14,44 @@ Gets or sets a value indicating whether assignments should be grouped instead of
public bool GroupAssignments { get; set; }
```
+## Examples
+
+Shows how to work with groups.
+
+```csharp
+var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
+
+Console.WriteLine("Task Groups Count: " + project.TaskGroups.Count);
+var group = project.TaskGroups.ToList()[1];
+Console.WriteLine("Task Group Uid: " + group.Uid);
+Console.WriteLine("Task Group Index: " + group.Index);
+Console.WriteLine("Task Group Name: " + group.Name);
+Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
+Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
+Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
+Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
+Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
+
+foreach (var criterion in group.GroupCriteria)
+{
+ Console.WriteLine("Task Criterion Field: " + criterion.Field);
+ Console.WriteLine("Task Criterion GroupOn: " + criterion.GroupOn);
+ Console.WriteLine("Task Criterion Cell Color: " + criterion.CellColor);
+ Console.WriteLine("Task Criterion Pattern: " + criterion.Pattern);
+
+ if (group == criterion.ParentGroup)
+ {
+ Console.WriteLine("Parent Group is equal to task Group.");
+ }
+
+ Console.WriteLine("Font Name: " + criterion.Font.FontFamily);
+ Console.WriteLine("Font Size: " + criterion.Font.Size);
+ Console.WriteLine("Font Style: " + criterion.Font.Style);
+ Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
+}
+```
+
### See Also
* class [Group](../)
diff --git a/english/net/aspose.tasks/group/groupcriteria/_index.md b/english/net/aspose.tasks/group/groupcriteria/_index.md
index 9828f00858..f6f251ea5d 100644
--- a/english/net/aspose.tasks/group/groupcriteria/_index.md
+++ b/english/net/aspose.tasks/group/groupcriteria/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
@@ -51,6 +52,70 @@ foreach (var criterion in group.GroupCriteria)
}
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [GroupCriterionCollection](../../groupcriterioncollection/)
diff --git a/english/net/aspose.tasks/group/index/_index.md b/english/net/aspose.tasks/group/index/_index.md
index 4673cd589b..18c235dd9f 100644
--- a/english/net/aspose.tasks/group/index/_index.md
+++ b/english/net/aspose.tasks/group/index/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
diff --git a/english/net/aspose.tasks/group/maintainhierarchy/_index.md b/english/net/aspose.tasks/group/maintainhierarchy/_index.md
index 0a5ffd6d23..b2a99ebe74 100644
--- a/english/net/aspose.tasks/group/maintainhierarchy/_index.md
+++ b/english/net/aspose.tasks/group/maintainhierarchy/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
diff --git a/english/net/aspose.tasks/group/name/_index.md b/english/net/aspose.tasks/group/name/_index.md
index 7c6d98c86e..25a04e25df 100644
--- a/english/net/aspose.tasks/group/name/_index.md
+++ b/english/net/aspose.tasks/group/name/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
diff --git a/english/net/aspose.tasks/group/showinmenu/_index.md b/english/net/aspose.tasks/group/showinmenu/_index.md
index 0ddf238060..27e7179880 100644
--- a/english/net/aspose.tasks/group/showinmenu/_index.md
+++ b/english/net/aspose.tasks/group/showinmenu/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
diff --git a/english/net/aspose.tasks/group/showsummary/_index.md b/english/net/aspose.tasks/group/showsummary/_index.md
index cc28468c18..f7f3068017 100644
--- a/english/net/aspose.tasks/group/showsummary/_index.md
+++ b/english/net/aspose.tasks/group/showsummary/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
diff --git a/english/net/aspose.tasks/group/uid/_index.md b/english/net/aspose.tasks/group/uid/_index.md
index a93969ab68..a91abf7eac 100644
--- a/english/net/aspose.tasks/group/uid/_index.md
+++ b/english/net/aspose.tasks/group/uid/_index.md
@@ -29,6 +29,7 @@ Console.WriteLine("Task Group Name: " + group.Name);
Console.WriteLine("Is Task Group Maintain Hierarchy?: " + group.MaintainHierarchy);
Console.WriteLine("Is Task Group Show In Menu?: " + group.ShowInMenu);
Console.WriteLine("Is Task Group Show Summary?: " + group.ShowSummary);
+Console.WriteLine("Is Task Group should groups Assignments instead of Tasks?: " + group.GroupAssignments);
Console.WriteLine("Task Group Criteria count: " + group.GroupCriteria.Count);
Console.WriteLine("\n************* Retrieving Task Group's Criterion information *************");
diff --git a/english/net/aspose.tasks/groupcriterion/_index.md b/english/net/aspose.tasks/groupcriterion/_index.md
index 95359343aa..028f42a5db 100644
--- a/english/net/aspose.tasks/groupcriterion/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/_index.md
@@ -31,8 +31,6 @@ public class GroupCriterion
| [FontColor](../../aspose.tasks/groupcriterion/fontcolor/) { get; set; } | Gets or sets the color of the font for a field used as a criterion in a group definition. |
| [GroupInterval](../../aspose.tasks/groupcriterion/groupinterval/) { get; set; } | Gets or sets the interval for a field used as a criterion in a group definition. |
| [GroupOn](../../aspose.tasks/groupcriterion/groupon/) { get; set; } | Gets or sets the type of grouping for a field used as a criterion in a group definition. |
-| [Index](../../aspose.tasks/groupcriterion/index/) { get; } | Gets the index of a `GroupCriterion` object in the containing [`GroupCriterionCollection`](../groupcriterioncollection/) collection. |
-| [ParentGroup](../../aspose.tasks/groupcriterion/parentgroup/) { get; } | Gets the parent of the `GroupCriterion` object. |
| [Pattern](../../aspose.tasks/groupcriterion/pattern/) { get; set; } | Gets or sets the pattern of the cell for a field used as a criterion in a group definition. |
| [StartAt](../../aspose.tasks/groupcriterion/startat/) { get; set; } | Gets or sets the start of the intervals for a field used as a criterion in a group definition. |
@@ -45,7 +43,7 @@ public class GroupCriterion
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
@@ -80,6 +78,70 @@ Console.WriteLine("Font Style: " + criterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* namespace [Aspose.Tasks](../../aspose.tasks/)
diff --git a/english/net/aspose.tasks/groupcriterion/ascending/_index.md b/english/net/aspose.tasks/groupcriterion/ascending/_index.md
index fca05634f3..15bb681c1e 100644
--- a/english/net/aspose.tasks/groupcriterion/ascending/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/ascending/_index.md
@@ -16,7 +16,7 @@ public bool Ascending { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
diff --git a/english/net/aspose.tasks/groupcriterion/cellcolor/_index.md b/english/net/aspose.tasks/groupcriterion/cellcolor/_index.md
index 87af87934f..f820848d47 100644
--- a/english/net/aspose.tasks/groupcriterion/cellcolor/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/cellcolor/_index.md
@@ -16,7 +16,7 @@ public Color CellColor { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
diff --git a/english/net/aspose.tasks/groupcriterion/equals/_index.md b/english/net/aspose.tasks/groupcriterion/equals/_index.md
index 77c9af7d02..b5c15d82db 100644
--- a/english/net/aspose.tasks/groupcriterion/equals/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/equals/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterion.Equals
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterion method. Returns a value indicating whether this instance is equal to a specified object
type: docs
-weight: 130
+weight: 110
url: /net/aspose.tasks/groupcriterion/equals/
---
## GroupCriterion.Equals method
@@ -22,25 +22,6 @@ public override bool Equals(object obj)
**True** if o is a GroupCriterion that has the same UID value as this instance; otherwise, **false**.
-## Examples
-
-Shows how to check equality of group criteria.
-
-```csharp
-var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
-var group = project.TaskGroups.ToList()[1];
-
-// get the first group criteria
-List groupCriteria = group.GroupCriteria.ToList();
-var criterion1 = groupCriteria[0];
-var criterion2 = groupCriteria[0];
-
-// group criteria equality is based on public member 'Field'
-Console.WriteLine("Task Criterion 1 Field: " + criterion1.Field);
-Console.WriteLine("Task Criterion 2 Field: " + criterion2.Field);
-Console.WriteLine("Are the criteria equal: " + criterion1.Equals(criterion2));
-```
-
### See Also
* class [GroupCriterion](../)
diff --git a/english/net/aspose.tasks/groupcriterion/field/_index.md b/english/net/aspose.tasks/groupcriterion/field/_index.md
index aa81f49b20..fe14ff7397 100644
--- a/english/net/aspose.tasks/groupcriterion/field/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/field/_index.md
@@ -16,7 +16,7 @@ public Field Field { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
@@ -51,6 +51,70 @@ Console.WriteLine("Font Style: " + criterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* enum [Field](../../field/)
diff --git a/english/net/aspose.tasks/groupcriterion/font/_index.md b/english/net/aspose.tasks/groupcriterion/font/_index.md
index 2c6f2ba7c2..9e456c6c34 100644
--- a/english/net/aspose.tasks/groupcriterion/font/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/font/_index.md
@@ -16,7 +16,7 @@ public FontDescriptor Font { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
@@ -51,6 +51,70 @@ Console.WriteLine("Font Style: " + criterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [FontDescriptor](../../../aspose.tasks.visualization/fontdescriptor/)
diff --git a/english/net/aspose.tasks/groupcriterion/fontcolor/_index.md b/english/net/aspose.tasks/groupcriterion/fontcolor/_index.md
index 8725bd0c0b..74a7541457 100644
--- a/english/net/aspose.tasks/groupcriterion/fontcolor/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/fontcolor/_index.md
@@ -16,7 +16,7 @@ public Color FontColor { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
diff --git a/english/net/aspose.tasks/groupcriterion/gethashcode/_index.md b/english/net/aspose.tasks/groupcriterion/gethashcode/_index.md
index 949f107895..cfe66cac84 100644
--- a/english/net/aspose.tasks/groupcriterion/gethashcode/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/gethashcode/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterion.GetHashCode
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterion method. Serves as a hash function for a particular type
type: docs
-weight: 140
+weight: 120
url: /net/aspose.tasks/groupcriterion/gethashcode/
---
## GroupCriterion.GetHashCode method
@@ -18,23 +18,6 @@ public override int GetHashCode()
A hash code for the current Object.
-## Examples
-
-Shows how to use hash code of a group criterion.
-
-```csharp
-var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
-var group = project.TaskGroups.ToList()[1];
-
-// get the first group criteria
-var criterion = group.GroupCriteria.ToList()[0];
-
-// each GroupCriterion has internal GUID which hash code is based on
-Console.WriteLine("Task Criterion HashCode: " + criterion.GetHashCode());
-
-// work with group criteria...
-```
-
### See Also
* class [GroupCriterion](../)
diff --git a/english/net/aspose.tasks/groupcriterion/groupinterval/_index.md b/english/net/aspose.tasks/groupcriterion/groupinterval/_index.md
index 36ac7c3c95..a73079356b 100644
--- a/english/net/aspose.tasks/groupcriterion/groupinterval/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/groupinterval/_index.md
@@ -16,7 +16,7 @@ public object GroupInterval { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
@@ -51,6 +51,70 @@ Console.WriteLine("Font Style: " + criterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [GroupCriterion](../)
diff --git a/english/net/aspose.tasks/groupcriterion/groupon/_index.md b/english/net/aspose.tasks/groupcriterion/groupon/_index.md
index 368d39747f..f1ffd07c84 100644
--- a/english/net/aspose.tasks/groupcriterion/groupon/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/groupon/_index.md
@@ -16,7 +16,7 @@ public GroupOn GroupOn { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
@@ -51,6 +51,70 @@ Console.WriteLine("Font Style: " + criterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* enum [GroupOn](../../groupon/)
diff --git a/english/net/aspose.tasks/groupcriterion/pattern/_index.md b/english/net/aspose.tasks/groupcriterion/pattern/_index.md
index 1468bf628d..5b6f994be4 100644
--- a/english/net/aspose.tasks/groupcriterion/pattern/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/pattern/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterion.Pattern
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterion property. Gets or sets the pattern of the cell for a field used as a criterion in a group definition
type: docs
-weight: 110
+weight: 90
url: /net/aspose.tasks/groupcriterion/pattern/
---
## GroupCriterion.Pattern property
@@ -16,7 +16,7 @@ public BackgroundPattern Pattern { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
diff --git a/english/net/aspose.tasks/groupcriterion/startat/_index.md b/english/net/aspose.tasks/groupcriterion/startat/_index.md
index cc39dcc29c..9f0e1c8880 100644
--- a/english/net/aspose.tasks/groupcriterion/startat/_index.md
+++ b/english/net/aspose.tasks/groupcriterion/startat/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterion.StartAt
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterion property. Gets or sets the start of the intervals for a field used as a criterion in a group definition
type: docs
-weight: 120
+weight: 100
url: /net/aspose.tasks/groupcriterion/startat/
---
## GroupCriterion.StartAt property
@@ -16,7 +16,7 @@ public object StartAt { get; set; }
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
@@ -51,6 +51,70 @@ Console.WriteLine("Font Style: " + criterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + criterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [GroupCriterion](../)
diff --git a/english/net/aspose.tasks/groupcriterioncollection/_index.md b/english/net/aspose.tasks/groupcriterioncollection/_index.md
index f4d3269d57..9ab2d30736 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/_index.md
@@ -20,7 +20,6 @@ public class GroupCriterionCollection : IList
| --- | --- |
| [Count](../../aspose.tasks/groupcriterioncollection/count/) { get; } | Gets the number of elements contained in this collection. |
| [IsReadOnly](../../aspose.tasks/groupcriterioncollection/isreadonly/) { get; } | Gets a value indicating whether this collection is read-only; otherwise, false. |
-| [ParentGroup](../../aspose.tasks/groupcriterioncollection/parentgroup/) { get; } | Gets the parent of the GroupCriterion object. |
## Methods
diff --git a/english/net/aspose.tasks/groupcriterioncollection/add/_index.md b/english/net/aspose.tasks/groupcriterioncollection/add/_index.md
index 5640df93bf..5a175f070b 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/add/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/add/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.Add
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Adds the specified item to this collection
type: docs
-weight: 40
+weight: 30
url: /net/aspose.tasks/groupcriterioncollection/add/
---
## GroupCriterionCollection.Add method
diff --git a/english/net/aspose.tasks/groupcriterioncollection/clear/_index.md b/english/net/aspose.tasks/groupcriterioncollection/clear/_index.md
index 32fd10483c..889eb8f1bc 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/clear/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/clear/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.Clear
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Removes all items from this collection
type: docs
-weight: 50
+weight: 40
url: /net/aspose.tasks/groupcriterioncollection/clear/
---
## GroupCriterionCollection.Clear method
diff --git a/english/net/aspose.tasks/groupcriterioncollection/contains/_index.md b/english/net/aspose.tasks/groupcriterioncollection/contains/_index.md
index 9288fc21a9..13a4db0328 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/contains/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/contains/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.Contains
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Returns true if the specified item is found in this collection otherwise false
type: docs
-weight: 60
+weight: 50
url: /net/aspose.tasks/groupcriterioncollection/contains/
---
## GroupCriterionCollection.Contains method
diff --git a/english/net/aspose.tasks/groupcriterioncollection/copyto/_index.md b/english/net/aspose.tasks/groupcriterioncollection/copyto/_index.md
index 85c7de4089..c7850fe116 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/copyto/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/copyto/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.CopyTo
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Copies the elements of this collection to the specified array starting at the specified array index
type: docs
-weight: 70
+weight: 60
url: /net/aspose.tasks/groupcriterioncollection/copyto/
---
## GroupCriterionCollection.CopyTo method
diff --git a/english/net/aspose.tasks/groupcriterioncollection/getenumerator/_index.md b/english/net/aspose.tasks/groupcriterioncollection/getenumerator/_index.md
index 202a0fd6d4..8fadb77659 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/getenumerator/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/getenumerator/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.GetEnumerator
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Returns an enumerator for this collection
type: docs
-weight: 80
+weight: 70
url: /net/aspose.tasks/groupcriterioncollection/getenumerator/
---
## GroupCriterionCollection.GetEnumerator method
diff --git a/english/net/aspose.tasks/groupcriterioncollection/remove/_index.md b/english/net/aspose.tasks/groupcriterioncollection/remove/_index.md
index d670ea287c..60423cf74d 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/remove/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/remove/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.Remove
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Removes the first occurrence of a specific object from this collection
type: docs
-weight: 90
+weight: 80
url: /net/aspose.tasks/groupcriterioncollection/remove/
---
## GroupCriterionCollection.Remove method
diff --git a/english/net/aspose.tasks/groupcriterioncollection/tolist/_index.md b/english/net/aspose.tasks/groupcriterioncollection/tolist/_index.md
index 2426645d30..b14ad49847 100644
--- a/english/net/aspose.tasks/groupcriterioncollection/tolist/_index.md
+++ b/english/net/aspose.tasks/groupcriterioncollection/tolist/_index.md
@@ -3,7 +3,7 @@ title: GroupCriterionCollection.ToList
second_title: Aspose.Tasks for .NET API Reference
description: GroupCriterionCollection method. Converts a GroupCriterion collection to a list of GroupCriterion objects
type: docs
-weight: 100
+weight: 90
url: /net/aspose.tasks/groupcriterioncollection/tolist/
---
## GroupCriterionCollection.ToList method
diff --git a/english/net/aspose.tasks/groupon/_index.md b/english/net/aspose.tasks/groupon/_index.md
index 54907b45ae..c0f9861373 100644
--- a/english/net/aspose.tasks/groupon/_index.md
+++ b/english/net/aspose.tasks/groupon/_index.md
@@ -48,7 +48,7 @@ public enum GroupOn
## Examples
-Shows how to work with a group criterion.
+Shows how to read properties of a group criterion.
```csharp
var project = new Project(DataDir + "ReadGroupDefinitionData.mpp");
diff --git a/english/net/aspose.tasks/project/resourcegroups/_index.md b/english/net/aspose.tasks/project/resourcegroups/_index.md
index fdf3290882..74885e250a 100644
--- a/english/net/aspose.tasks/project/resourcegroups/_index.md
+++ b/english/net/aspose.tasks/project/resourcegroups/_index.md
@@ -39,6 +39,70 @@ Console.WriteLine("Resource Font Style: " + resCriterion.Font.Style);
Console.WriteLine("Resource Ascending/Descending: " + resCriterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [GroupCollection](../../groupcollection/)
diff --git a/english/net/aspose.tasks/project/taskgroups/_index.md b/english/net/aspose.tasks/project/taskgroups/_index.md
index 38dab8dd99..95fb5b4157 100644
--- a/english/net/aspose.tasks/project/taskgroups/_index.md
+++ b/english/net/aspose.tasks/project/taskgroups/_index.md
@@ -44,6 +44,70 @@ Console.WriteLine("Font Style: " + taskCriterion.Font.Style);
Console.WriteLine("Ascending/Descending: " + taskCriterion.Ascending);
```
+Shows how to add groups to a project.
+
+```csharp
+var p = new Project();
+
+{
+ var group = new Group();
+ group.Name = "My new task group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.TaskDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 13F, FontStyles.Italic);
+ criterion.GroupOn = GroupOn.DurationMinutes;
+ criterion.StartAt = 5;
+ criterion.GroupInterval = 3D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.TaskPercentComplete;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 17, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Pct199;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Green;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.TaskGroups.Add(group);
+}
+
+{
+ var group = new Group();
+ group.Name = "My new resource group";
+ group.MaintainHierarchy = true;
+ group.ShowSummary = true;
+
+ var criterion = new GroupCriterion();
+ criterion.Field = Field.ResourceDuration1;
+ criterion.Font = new FontDescriptor("Comic Sans MS", 11F, FontStyles.Bold);
+ criterion.GroupOn = GroupOn.DurationHours;
+ criterion.StartAt = 1;
+ criterion.GroupInterval = 2D;
+ criterion.Pattern = BackgroundPattern.DarkDiagonalLeft;
+ group.GroupCriteria.Add(criterion);
+
+ var criterion2 = new GroupCriterion();
+ criterion2.Field = Field.ResourceCost;
+ criterion2.Font = new FontDescriptor("Bodoni MT", 12, FontStyles.Italic | FontStyles.Bold);
+ criterion2.GroupOn = GroupOn.Interval;
+ criterion2.StartAt = 1D;
+ criterion2.GroupInterval = 10D;
+ criterion2.Pattern = BackgroundPattern.LightDither;
+ criterion2.CellColor = Color.Magenta;
+ criterion2.FontColor = Color.Red;
+ group.GroupCriteria.Add(criterion2);
+ group.GroupAssignments = true;
+ p.ResourceGroups.Add(group);
+}
+
+p.Save(OutDir + "output_CreateGroup.mpp", new MPPSaveOptions() { WriteGroups = true });
+```
+
### See Also
* class [GroupCollection](../../groupcollection/)
diff --git a/english/net/aspose.tasks/project/vbaproject/_index.md b/english/net/aspose.tasks/project/vbaproject/_index.md
index 5b60c02f90..d4c0d0e878 100644
--- a/english/net/aspose.tasks/project/vbaproject/_index.md
+++ b/english/net/aspose.tasks/project/vbaproject/_index.md
@@ -16,6 +16,13 @@ public VbaProject VbaProject { get; }
## Examples
+Shows how to remove VBA macros from MPP file.
+
+```csharp
+var project = new Project(DataDir + "VbaProject.mpp");
+project.Save(OutDir + "Vba.cleared.mpp", new MPPSaveOptions() { ClearVba = true });
+```
+
Shows how to read VBA project information.
```csharp