52 lines
1.2 KiB
C#
52 lines
1.2 KiB
C#
![]() |
using System;
|
|||
|
|
|||
|
namespace CPF.ReoGrid.Actions
|
|||
|
{
|
|||
|
public class AutoFillSerialAction : BaseWorksheetAction
|
|||
|
{
|
|||
|
public RangePosition SourceRange { get; set; }
|
|||
|
|
|||
|
public RangePosition TargetRange { get; set; }
|
|||
|
|
|||
|
public AutoFillSerialAction(RangePosition sourceRange, RangePosition targetRange)
|
|||
|
{
|
|||
|
this.SourceRange = sourceRange;
|
|||
|
this.TargetRange = targetRange;
|
|||
|
}
|
|||
|
|
|||
|
public override void Do()
|
|||
|
{
|
|||
|
this.backupedGrid = base.Worksheet.GetPartialGrid(this.TargetRange, PartialGridCopyFlag.CellData, ExPartialGridCopyFlag.None, false);
|
|||
|
try
|
|||
|
{
|
|||
|
base.Worksheet.AutoFillSerial(this.SourceRange, this.TargetRange);
|
|||
|
base.Worksheet.SelectionRange = RangePosition.Union(this.SourceRange, this.TargetRange);
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
base.Worksheet.NotifyExceptionHappen(ex);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public override void Undo()
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
base.Worksheet.SetPartialGrid(this.TargetRange, this.backupedGrid);
|
|||
|
base.Worksheet.SelectionRange = this.SourceRange;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
base.Worksheet.NotifyExceptionHappen(ex);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public override string GetName()
|
|||
|
{
|
|||
|
return "Fill Serial Action";
|
|||
|
}
|
|||
|
|
|||
|
private PartialGrid backupedGrid;
|
|||
|
}
|
|||
|
}
|