Class CircularPointer
Represents the pointer visual element that moves along the circular scale of the circular gauge.
Inherited Members
Namespace: Syncfusion.Windows.Gauge
Assembly: Syncfusion.Gauge.WPF.dll
Syntax
public class CircularPointer : GaugeElement
Remarks
To use a pointer as a MarkerPointer, the PointerNeedleType should be set to marker and MarkerStyle can be choosed from the available styles.
Examples
using System;
using System.Windows;
using System.Windows.Controls;
using Syncfusion.Windows.Shared;
using Syncfusion.Windows.Gauge;
namespace CircularPointerSample
{
public partial class Window1 : Window
{
private CircularScale m_scale;
private CircularGauge m_gauge;
public Window1()
{
InitializeComponent();
m_scale = new CircularScale();
m_gauge = new CircularGauge();
m_scale.ShadowOffset = 1;
m_scale.Minimum = 0;
m_scale.Maximum = 100;
m_scale.MinorIntervalValue = 2;
m_scale.MajorIntervalValue = 10;
m_scale.StartAngle = 120;
m_scale.GapSweepAngle = 300;
m_scale.ScaleBarSize = 1.5;
m_scale.Radius = 116;
this.m_gauge.Scales.Add(m_scale);
CircularPointer pointer1 = new CircularPointer();
pointer1.PointerLength = 100;
pointer1.PointerWidth = 20;
pointer1.PointerPlacement = ScalePlacement.Outside;
m_scale.Pointers.Add(pointer1);
this.Content = m_gauge;
}
}
}
Constructors
CircularPointer()
Initializes a new instance of the CircularPointer class.
Declaration
public CircularPointer()
Fields
AnimationDurationProperty
Identifies the AnimationDuration dependency property.
Declaration
public static readonly DependencyProperty AnimationDurationProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
DecrementKeyProperty
Identifies the DecrementKey dependency property.
Declaration
public static readonly DependencyProperty DecrementKeyProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
EnablePointerInteractionProperty
Identifies the EnablePointerInteraction dependency property.
Declaration
public static readonly DependencyProperty EnablePointerInteractionProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
EnableSizeToContainerProperty
Identifies the EnableSizeToContainer dependency property.
Declaration
public static readonly DependencyProperty EnableSizeToContainerProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
IncrementKeyProperty
Identifies the IncrementKey dependency property.
Declaration
public static readonly DependencyProperty IncrementKeyProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
IsAnimationEnabledProperty
Identifies the IsAnimationEnabled dependency property.
Declaration
public static readonly DependencyProperty IsAnimationEnabledProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
MarkerCustomGeometryProperty
Identifies the MarkerCustomGeometry dependency property.
Declaration
public static readonly DependencyProperty MarkerCustomGeometryProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
MarkerStyleProperty
Identifies the MarkerStyle dependency property.
Declaration
public static readonly DependencyProperty MarkerStyleProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
NeedleCustomGeometryProperty
Identifies the NeedleCustomGeometry dependency property.
Declaration
public static readonly DependencyProperty NeedleCustomGeometryProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
NeedleStyleProperty
Identifies the NeedleStyle dependency property.
Declaration
public static readonly DependencyProperty NeedleStyleProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
PointerLengthProperty
Identifies the PointerLength dependency property.
Declaration
public static readonly DependencyProperty PointerLengthProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
PointerNeedleTypeProperty
Identifies the PointerNeedleType dependency property.
Declaration
public static readonly DependencyProperty PointerNeedleTypeProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
PointerPlacementProperty
Identifies the PointerPlacement dependency property.
Declaration
public static readonly DependencyProperty PointerPlacementProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
PointerWidthProperty
Identifies the PointerWidth dependency property.
Declaration
public static readonly DependencyProperty PointerWidthProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
ValueProperty
Identifies the Value dependency property.
Declaration
public static readonly DependencyProperty ValueProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
Properties
AnimationDuration
Gets or sets the animation duration of the pointer. This is a dependency property.
Declaration
public double AnimationDuration { get; set; }
Property Value
Type | Description |
---|---|
System.Double | Type: System.Double Default value is Double.NaN. |
DecrementKey
Gets or sets the Decrement key for the pointer. This is a dependency property.
Declaration
public Key DecrementKey { get; set; }
Property Value
Type | Description |
---|---|
System.Windows.Input.Key | Type: System.Windows.Input.Key Default value is Down key. |
EnablePointerInteraction
Gets or sets whether the pointer interactivity of the pointer is enabled or not. This is a dependency property.
Declaration
public bool EnablePointerInteraction { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean | Type: System.Boolean Default value is true. |
EnableSizeToContainer
Gets or sets a value indicating whether [enable size to container].
Declaration
public bool EnableSizeToContainer { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
|
IncrementKey
Gets or sets the Increment key for the pointer. This is a dependency property.
Declaration
public Key IncrementKey { get; set; }
Property Value
Type | Description |
---|---|
System.Windows.Input.Key | Type: System.Windows.Input.Key Default value is Up key. |
IsAnimationEnabled
Gets or sets a value indicating whether animation is enabled or not.
Declaration
public bool IsAnimationEnabled { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean | true if this instance ; otherwise, false. |
IsLogarithmic
Gets or sets a value indicating whether IsLogarithmic value is true or false, so that log values can be displayed on the scale.This is a dependency property.
Declaration
public bool IsLogarithmic { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean | Type: System.Boolean Default IsLogarithmic is "False". |
See Also
LogBase
Gets or sets the LogBase value that can be displayed in the scale. This is a dependency property.
Declaration
public double LogBase { get; set; }
Property Value
Type | Description |
---|---|
System.Double | Type: System.Double Default LogBase is 10. |
See Also
MarkerCustomGeometry
Gets or sets the custom geometry value for Marker.
Declaration
public Geometry MarkerCustomGeometry { get; set; }
Property Value
Type | Description |
---|---|
System.Windows.Media.Geometry | Type : System.Windows.Media.Geometry Default Value is Null. |
MarkerStyle
Gets or sets the shape of the marker pointer. This is a dependency property.
Declaration
public MarkerStyle MarkerStyle { get; set; }
Property Value
Type | Description |
---|---|
MarkerStyle | Type: MarkerStyle Default value is MarkerStyle.Rectangle. |
See Also
NeedleCustomGeometry
Gets or sets the custom geometry value for Needle.
Declaration
public Geometry NeedleCustomGeometry { get; set; }
Property Value
Type | Description |
---|---|
System.Windows.Media.Geometry | Type : System.Windows.Media.Geometry Default Value is Null. |
NeedleStyle
Gets or sets the shape of the needle pointer. This is a dependency property.
Declaration
public NeedleStyle NeedleStyle { get; set; }
Property Value
Type | Description |
---|---|
NeedleStyle | Type: NeedleStyle Default value is NeedleStyle.Triangle. |
See Also
PointerLength
Gets or sets the length of the pointer. This is a dependency property.
Declaration
public double PointerLength { get; set; }
Property Value
Type | Description |
---|---|
System.Double | Type: System.Double Default value is 0. |
See Also
PointerNeedleType
Gets or sets the pointer needle type. This is a dependency property.
Declaration
public PointerNeedleType PointerNeedleType { get; set; }
Property Value
Type | Description |
---|---|
PointerNeedleType | Type: PointerNeedleType Default value is PointerNeedleType.Needle. |
PointerPlacement
Gets or sets the position to place the pointer relative to the scale. This is a dependency property.
Declaration
public ScalePlacement PointerPlacement { get; set; }
Property Value
Type | Description |
---|---|
ScalePlacement | Type: ScalePlacement Default value is ScalePlacement.Inside. |
PointerWidth
Gets or sets the width of the pointer. This is a dependency property.
Declaration
public double PointerWidth { get; set; }
Property Value
Type | Description |
---|---|
System.Double | Type: System.Double Default value is 0. |
Value
Gets or sets the value indicated by the pointer. This is a dependency property.
Declaration
public double Value { get; set; }
Property Value
Type | Description |
---|---|
System.Double | Type: System.Double Default value is 0. |
Methods
AngleToValue(Double, Double)
Method to convert Angle to Value in circularknob.
Declaration
protected virtual double AngleToValue(double angle, double pointervalue)
Parameters
Type | Name | Description |
---|---|---|
System.Double | angle | Angle value for conversion |
System.Double | pointervalue | previous pointer value |
Returns
Type | Description |
---|---|
System.Double | Value corresponding to that given angle |
ArrangeOverride(Size)
Positions child elements and determines a size for the element.
Declaration
protected override Size ArrangeOverride(Size finalSize)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.Size | finalSize | The final area within the parent that this element should use to arrange itself and its children. |
Returns
Type | Description |
---|---|
System.Windows.Size | The actual size used. |
Remarks
Method returns the actual size used as the same value as that of the size given by its parent to arrange the pointer. Instead of actually arranging the pointer, it just initializes the m_needlePath according to the shape of the pointer.
CoercePointerLength(Object)
Fulfils the logic before setting the value of PointerLength dependency property.
Declaration
protected virtual object CoercePointerLength(object value)
Parameters
Type | Name | Description |
---|---|---|
System.Object | value | The value that should be corrected. |
Returns
Type | Description |
---|---|
System.Object | The corrected value. |
CoercePointerLength(DependencyObject, Object)
Coerces the value of the PointerLength property.
Declaration
public static object CoercePointerLength(DependencyObject d, object value)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyObject | d | The CircularPointer object. |
System.Object | value | The instance containing the event data. |
Returns
Type | Description |
---|---|
System.Object | The checked value. |
CoerceValue(Object)
Fulfils the logic before setting the value of Value dependency property.
Declaration
protected virtual object CoerceValue(object value)
Parameters
Type | Name | Description |
---|---|---|
System.Object | value | The value that should be corrected. |
Returns
Type | Description |
---|---|
System.Object | The corrected value. |
CoerceValue(DependencyObject, Object)
Coerces the value of the Value property.
Declaration
public static object CoerceValue(DependencyObject d, object value)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyObject | d | The CircularPointer object. |
System.Object | value | The instance containing the event data. |
Returns
Type | Description |
---|---|
System.Object | The checked value. |
GetAngleByValue(Double)
Gets the corresponding angle for scale value passed.
Declaration
protected virtual double GetAngleByValue(double value)
Parameters
Type | Name | Description |
---|---|---|
System.Double | value | Pointer value. |
Returns
Type | Description |
---|---|
System.Double | Calculated angle. |
Remarks
- ratioCalculates the number of segments(between Maximum and Minimum values), that are possible,each of "value - Minimum" length.
- angleCalculate the angles, of interval("value-Minimum") relative to Sweep angle of the Gauge and then adding the StartAngle to get the exact angle to place the Pointer.
MeasureOverride(Size)
Measures the size required for child elements in layout and determines a size for the this element.
Declaration
protected override Size MeasureOverride(Size availableSize)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.Size | availableSize | The available size that this element can give to child elements. |
Returns
Type | Description |
---|---|
System.Windows.Size | The size that this element determines it needs during layout. |
Remarks
For "Bar" pointer, the height required is 1. For all the remaining pointer types , the size required is equal to their Height and Width.
OnAnglePositionChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises AnglePositionChanged event.
Declaration
protected virtual void OnAnglePositionChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnAnimationDurationChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises AnimationDurationChanged event.
Declaration
protected virtual void OnAnimationDurationChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnDecrementKeyChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises DecrementKeyChanged event.
Declaration
protected virtual void OnDecrementKeyChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnEnablePointerInteractionChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises EnablePointerInteractionChanged event.
Declaration
protected virtual void OnEnablePointerInteractionChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnGotFocus(RoutedEventArgs)
Invoked whenever an unhandled System.Windows.UIElement.GotFocus event reaches this element in its route.
Declaration
protected override void OnGotFocus(RoutedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.RoutedEventArgs | e | The System.Windows.RoutedEventArgs that contains the event data. |
OnIncrementKeyChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises IncrementKeyChanged event.
Declaration
protected virtual void OnIncrementKeyChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnInitialized(EventArgs)
Initializes the Circular Pointer.
Declaration
protected override void OnInitialized(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | The System.Windows.RoutedEventArgs that contains the event data. |
OnIsAnimationEnabledChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises IsAnimationEnabledChanged event.
Declaration
protected virtual void OnIsAnimationEnabledChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnLostFocus(RoutedEventArgs)
Raises the System.Windows.UIElement.LostFocus routed event by using the event data that is provided.
Declaration
protected override void OnLostFocus(RoutedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.RoutedEventArgs | e | A System.Windows.RoutedEventArgs that contains event data. This event data must contain the identifier for the System.Windows.UIElement.LostFocus event. |
OnMarkerStyleChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises MarkerStyleChanged event.
Declaration
protected virtual void OnMarkerStyleChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnNeedleStyleChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises NeedleStyleChanged event.
Declaration
protected virtual void OnNeedleStyleChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnPointerLengthChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises PointerLengthChanged event.
Declaration
protected virtual void OnPointerLengthChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnPointerNeedleTypeChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises PointerNeedleTypeChanged event.
Declaration
protected virtual void OnPointerNeedleTypeChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnPointerPlacementChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises PointerPlacementChanged event.
Declaration
protected virtual void OnPointerPlacementChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnPointerWidthChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises PointerWidthChanged event.
Declaration
protected virtual void OnPointerWidthChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
OnRender(DrawingContext)
Participates in rendering operations that are directed by the layout system.
Declaration
protected override void OnRender(DrawingContext drawingContext)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.Media.DrawingContext | drawingContext | The drawing instructions for a specific element. |
Remarks
The shadow offset is calculated according to the CircularGauge and is stored. If the pointer is of type Marker, there is no need to rotate the pointer. All the remaining pointer types are rotated by an angle of 180. The actual pointer and the shadow of the pointer is drawn.(Since the pointer is drawn at the center of the Gauge and then transformed to its actual location,all non-rectangular shaped pointers should be rotated)
OnValueChanged(DependencyPropertyChangedEventArgs)
Updates property value cache and raises ValueChanged event.
Declaration
protected virtual void OnValueChanged(DependencyPropertyChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.DependencyPropertyChangedEventArgs | e | Property change details, such as old value and new value. |
Remarks
Animation is provided whenever the value of the pointer changes. Animation is provided to the pointer between pointer's old position and its new position.
RefreshAnglePosition()
Updates the angle position of the pointer.
Declaration
protected virtual void RefreshAnglePosition()
Remarks
The pointer is set to appropriate angle based on the value of the pointer. If the PointerType is Needle, then a simple rotation of the needle to the appropriate angle is enough. If it is of type Marker, then based on the pointer's ScalePlacement appropriate X position is calculated(Note: All the calculations are done with regard to the original position of the pointer, i.e Center of the Gauge) and the Marker is rotated.
Events
AnglePositionChanged
Event that is raised when Syncfusion.Windows.Gauge.CircularPointer.AnglePosition property is changed.
Declaration
public event PropertyChangedCallback AnglePositionChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
AnimationDurationChanged
Event that is raised when AnimationDuration property is changed.
Declaration
public event PropertyChangedCallback AnimationDurationChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
DecrementKeyChanged
Event that is raised when DecrementKey property is changed.
Declaration
public event PropertyChangedCallback DecrementKeyChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
EnablePointerInteractionChanged
Event that is raised when EnablePointerInteraction property is changed.
Declaration
public event PropertyChangedCallback EnablePointerInteractionChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
IncrementKeyChanged
Event that is raised when IncrementKey property is changed.
Declaration
public event PropertyChangedCallback IncrementKeyChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
IsAnimationEnabledChanged
Event that is raised when AnimationDuration property is changed.
Declaration
public event PropertyChangedCallback IsAnimationEnabledChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
MarkerCustomGeometryChanged
Event that will raise when MarkerCustomGeometry property is changed.
Declaration
public event PropertyChangedCallback MarkerCustomGeometryChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
MarkerStyleChanged
Event that is raised when MarkerStyle property is changed.
Declaration
public event PropertyChangedCallback MarkerStyleChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
NeedleCustomGeometryChanged
Event that will raise when NeedleCustomGeometry property is changed.
Declaration
public event PropertyChangedCallback NeedleCustomGeometryChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
NeedleStyleChanged
Event that is raised when NeedleStyle property is changed.
Declaration
public event PropertyChangedCallback NeedleStyleChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
PointerLengthChanged
Event that is raised when PointerLength property is changed.
Declaration
public event PropertyChangedCallback PointerLengthChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
PointerNeedleTypeChanged
Event that is raised when PointerNeedleType property is changed.
Declaration
public event PropertyChangedCallback PointerNeedleTypeChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
PointerPlacementChanged
Event that is raised when PointerPlacement property is changed.
Declaration
public event PropertyChangedCallback PointerPlacementChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
PointerWidthChanged
Event that is raised when PointerWidth property is changed.
Declaration
public event PropertyChangedCallback PointerWidthChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |
ValueChanged
Event that is raised when Value property is changed.
Declaration
public event PropertyChangedCallback ValueChanged
Event Type
Type |
---|
System.Windows.PropertyChangedCallback |