Class FloatingShapeBase
Abstract base for all floating shape elements positioned over worksheet cells with anchoring, providing shared identity, naming, and geometry management.
Inheritance
Inherited Members
Namespace: Telerik.Windows.Documents.Spreadsheet.Model.Shapes
Assembly: Telerik.Windows.Documents.Spreadsheet.dll
Syntax
public abstract class FloatingShapeBase : ICopyable<FloatingShapeBase>
Properties
Description
Text description for accessibility and metadata purposes; changes are executed via command for undo support.
Declaration
public string Description { get; set; }
Property Value
|
System.String
The description of the shape. |
FloatingShapeType
Discriminates the shape category (Image, Chart, Note, Comment) to enable type-specific handling.
Declaration
public abstract FloatingShapeType FloatingShapeType { get; }
Property Value
|
FloatingShapeType
|
Id
Unique identifier within the owning worksheet, assigned at creation and invariant during the shape's lifetime.
Declaration
public int Id { get; }
Property Value
|
System.Int32
The id of the shape. |
LockAspectRatio
Controls whether resizing operations maintain the original width-to-height ratio, preventing distortion when set to true.
Declaration
public bool LockAspectRatio { get; set; }
Property Value
|
System.Boolean
The value indicating whether the aspect ratio between the width and height should remain constant. |
Name
User-assigned name for the shape, useful for identification and scripting; changes are executed via command for undo support.
Declaration
public string Name { get; set; }
Property Value
|
System.String
The name of the shape. |
Worksheet
Worksheet that owns this shape, establishing the coordinate system and command context.
Declaration
public Worksheet Worksheet { get; }
Property Value
|
Worksheet
The worksheet. |
Methods
OnShapeChanged()
Raises the ShapeChanged event, notifying subscribers of property modifications.
Declaration
protected void OnShapeChanged()
SetHeight(Boolean, Double, Boolean)
Resizes the shape to the specified height via command, optionally preserving aspect ratio and adjusting anchor position to maintain visual top-left corner.
Declaration
public void SetHeight(bool respectLockAspectRatio, double height, bool adjustCellIndex = false)
Parameters
|
System.Boolean
respectLockAspectRatio
A value indicating whether the aspect ratio lock should be respected. |
|
System.Double
height
The new height. |
|
System.Boolean
adjustCellIndex
A value indicating whether the top cell index and offset of the image should be adjusted. |
SetWidth(Boolean, Double, Boolean)
Resizes the shape to the specified width via command, optionally preserving aspect ratio and adjusting anchor position to maintain visual top-left corner.
Declaration
public void SetWidth(bool respectLockAspectRatio, double width, bool adjustCellIndex = false)
Parameters
|
System.Boolean
respectLockAspectRatio
A value indicating whether the aspect ratio lock should be respected. |
|
System.Double
width
The new width. |
|
System.Boolean
adjustCellIndex
A value indicating whether the top cell index and offset of the image should be adjusted. |
Events
ShapeChanged
Raised when any shape property changes, signaling that dependent UI or layout should refresh.
Declaration
public event EventHandler ShapeChanged
Event Type
|
System.EventHandler
|