AxisDragModifierBase
Fornece classe base para arrastar operações em eixos
Herda de: ChartModifierBase
Construtores
protected AxisDragModifierBase()
axisDragModifierBase = AxisDragModifierBase()
Inicializa uma nova instância da classe AxisDragModifierBase.
Propriedades
public string AxisId { get; set; }
value = axisDragModifierBase.AxisId
axisDragModifierBase.AxisId = value
Define qual YAxis ligar o YAxisDragModifier a, correspondente por string ID
public AxisDragModes DragMode { get; set; }
value = axisDragModifierBase.DragMode
axisDragModifierBase.DragMode = value
Obtém ou define o DragMode do YAxisDragModifier. Este modificador pode ser usado para escalar o VisibleRange@ ou passar o VisibleRange@ criando um efeito de rolagem ou de pan vertical.
public bool IsDragging { get; protected set; }
value = axisDragModifierBase.IsDragging
axisDragModifierBase.IsDragging = value
Obtém um valor indicando se o usuário está arrastando o eixo atualmente
public double MinTouchArea { get; set; }
value = axisDragModifierBase.MinTouchArea
axisDragModifierBase.MinTouchArea = value
Obtém ou define área mínima de reconhecimento (altura mínima para eixo horizontal ou largura de min para vertical), onde o usuário clica ou toca o comportamento de zoom.
Métodos
protected virtual DoubleRange CalculateRelativeRange(IRange fromRange, IAxis axis)
result = axisDragModifierBase.CalculateRelativeRange(fromRange, axis)
Quando sobreposto em uma classe derivada, calcula uma saída IRage para aplicar aos AxisBase associados, dados os parâmetros de entrada.
- fromRange
- O intervalo de entrada, esperando VisibleRange
- axis
- O eixo em funcionamento
Retorna: O intervalo de saída que pode então ser aplicado à propriedade GrowBy para obter o mesmo efeito que a aplicação do intervalo visível de entrada
protected abstract IRange CalculateScaledRange(Point currentPoint, Point lastPoint, bool isSecondHalf, IAxis axis)
result = axisDragModifierBase.CalculateScaledRange(currentPoint, lastPoint, isSecondHalf, axis)
Quando sobreposto em uma classe derivada, calcula uma saída de Intervalo para se aplicar ao AxisBase associado, dado os parâmetros de entrada
- currentPoint
- A posição actual do rato
- lastPoint
- A última posição do rato
- isSecondHalf
- Uma bandeira, que determina como a escala funciona, e.g. que metade do eixo (topo ou inferior, esquerda ou direita) foi arrastada
- axis
- O eixo em funcionamento
Retorna: A variação de saída
protected abstract IAxis GetCurrentAxis()
result = axisDragModifierBase.GetCurrentAxis()
Obtém a instância IAxis, com a qual o modificador atual está associado, no pai UltrachartSurface
protected virtual bool GetIsSecondHalf(Point point, Rect axisBounds, bool isHorizontalAxis)
result = axisDragModifierBase.GetIsSecondHalf(point, axisBounds, isHorizontalAxis)
Obtém se o ponto especificado do mouse está dentro do segundo (maioria à direita ou no topo) metade dos limites do Eixo
- point
- O ponto do rato
- axisBounds
- Os limites do eixo
- isHorizontalAxis
- Valor, que indica se o eixo atual é horizontal ou não
Retorna: Verdadeiro se o ponto estiver dentro do segundo (maioria à direita ou superior) metade dos limites do eixo, caso contrário falso
protected virtual Cursor GetUsedCursor(IAxis axis)
result = axisDragModifierBase.GetUsedCursor(axis)
Dependendo da orientação do eixo, retorna um cursor para mostrar durante o mouse-over do eixo
- axis
- A instância do eixo
public override void OnAttached()
axisDragModifierBase.OnAttached()
Chamado quando o modificador de gráfico está ligado à superfície do gráfico
public override void OnDetached()
axisDragModifierBase.OnDetached()
Chamado imediatamente antes do Modificador de Gráfico ser desvinculado da Superfície do Gráfico
protected override void OnIsEnabledChanged()
axisDragModifierBase.OnIsEnabledChanged()
Chamado quando a propriedade IsEnabled muda nesta instância ChartModifierBase @
public override void OnModifierMouseDown(ModifierMouseArgs e)
axisDragModifierBase.OnModifierMouseDown(e)
Chamado quando um botão do mouse é pressionado no pai UltrachartSurface
- e
- Argumentos que detalham a operação do botão do mouse
public override void OnModifierMouseMove(ModifierMouseArgs e)
axisDragModifierBase.OnModifierMouseMove(e)
Chamado quando o Mouse é movido sobre o pai UltrachartSurface
- e
- Argumentos que detalham a operação de movimento do mouse
public override void OnModifierMouseUp(ModifierMouseArgs e)
axisDragModifierBase.OnModifierMouseUp(e)
Chamado quando um botão do mouse é lançado no pai UltrachartSurface
- e
- Argumentos que detalham a operação do botão do mouse
protected abstract void PerformPan(Point currentPoint, Point lastPoint)
axisDragModifierBase.PerformPan(currentPoint, lastPoint)
Peforma uma pane na assocaited AxisBase. A pane é considerada como um arrasto de até
- currentPoint
- O ponto atual do mouse
- lastPoint
- O último ponto do mouse
protected virtual void PerformScale(Point currentPoint, Point lastPoint, bool isSecondHalf)
axisDragModifierBase.PerformScale(currentPoint, lastPoint, isSecondHalf)
Executa uma Escala na AxisBase associada. A escala é considerada como um arrasto de até
- currentPoint
- O ponto atual do mouse
- lastPoint
- O último ponto do mouse
- isSecondHalf
- Bandeira booleana para determinar qual lado do eixo é escalado
private void SetAxisCursor(Cursor cursor)
axisDragModifierBase.SetAxisCursor(cursor)
Define o cursor passado no eixo atual, ou o cursor padrão retornado pelo IAxis)
Campos
private static readonly DependencyProperty AxisIdProperty
value = AxisDragModifierBase.AxisIdProperty
Define YAxisId DependencyProperty @
public static readonly DependencyProperty DragModeProperty
value = AxisDragModifierBase.DragModeProperty
Define DragMode DependencyProperty @
public static readonly DependencyProperty MinTouchAreaProperty
value = AxisDragModifierBase.MinTouchAreaProperty
Define MinTouchArea DependencyProperty @