Timeline.Shape
Timeline.Shape property
Returns the TimelineShape object associated with this Timeline.
public TimelineShape Shape { get; }
Examples
using System;
using System.Reflection;
using Aspose.Cells;
using Aspose.Cells.Pivot;
using Aspose.Cells.Timelines;
namespace AsposeCellsExamples
{
public class TimelinePropertyShapeDemo
{
public static void Run()
{
// Create a new workbook and get the first worksheet
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
// Add minimal data required for a timeline (date field)
sheet.Cells["A1"].Value = "Date";
sheet.Cells["A2"].Value = DateTime.Now.AddDays(-2);
sheet.Cells["A3"].Value = DateTime.Now.AddDays(-1);
sheet.Cells["A4"].Value = DateTime.Now;
try
{
// Create a pivot table that will serve as the timeline data source
int pivotIdx = sheet.PivotTables.Add("A1:A4", "C1", "PivotTable1");
PivotTable pivot = sheet.PivotTables[pivotIdx];
pivot.AddFieldToArea(PivotFieldType.Row, "Date");
pivot.RefreshData();
// Add a timeline linked to the pivot table
int timelineIdx = sheet.Timelines.Add(pivot, 0, 0, "Date");
Timeline timeline = sheet.Timelines[timelineIdx];
// Attempt to read a 'Shape' property via reflection (if it exists in this version)
PropertyInfo shapeProp = typeof(Timeline).GetProperty("Shape", BindingFlags.Public | BindingFlags.Instance);
if (shapeProp != null)
{
object shapeValue = shapeProp.GetValue(timeline);
Console.WriteLine("Shape property value: " + (shapeValue ?? "null"));
}
else
{
Console.WriteLine("The Timeline class does not expose a 'Shape' property in this version.");
}
// Save the workbook to verify that timeline creation succeeded
workbook.Save("TimelineShapeDemo.xlsx");
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
}
See Also
- class TimelineShape
- class Timeline
- namespace Aspose.Cells.Timelines
- assembly Aspose.Cells