StrokeCollection.GetIncrementalLassoHitTester(Int32) Método

Definição

Cria um IncrementalLassoHitTester teste de acerto com StrokeCollection um caminho de laço (à mão livre).

public:
 System::Windows::Ink::IncrementalLassoHitTester ^ GetIncrementalLassoHitTester(int percentageWithinLasso);
public System.Windows.Ink.IncrementalLassoHitTester GetIncrementalLassoHitTester(int percentageWithinLasso);
member this.GetIncrementalLassoHitTester : int -> System.Windows.Ink.IncrementalLassoHitTester
Public Function GetIncrementalLassoHitTester (percentageWithinLasso As Integer) As IncrementalLassoHitTester

Parâmetros

percentageWithinLasso
Int32

A percentagem mínima de cada Stroke um que deve estar contida no laço para ser considerada atingida.

Devoluções

E IncrementalLassoHitTester esse hit testa o StrokeCollection.

Exemplos

O exemplo seguinte demonstra como obter um IncrementalLassoHitTester que permita ao utilizador selecionar traços com uma ferramenta de laço. Para criar um controlo que permita ao utilizador selecionar tinta, veja Como: Selecionar Tinta a partir de um Controlo Personalizado.

private void InitializeHitTester(StylusPointCollection collectedPoints)
{
    // Deselect any selected strokes.
    foreach (Stroke selectedStroke in selectedStrokes)
    {
        selectedStroke.DrawingAttributes.Color = inkDA.Color;
    }
    selectedStrokes.Clear();

    if (mode == InkMode.Select)
    {
        // Remove the previously drawn lasso, if it exists.
        if (lassoPath != null)
        {
            presenter.Strokes.Remove(lassoPath);
            lassoPath = null;
        }

        selectionTester =
            presenter.Strokes.GetIncrementalLassoHitTester(80);
        selectionTester.SelectionChanged += 
            new LassoSelectionChangedEventHandler(selectionTester_SelectionChanged);
        selectionTester.AddPoints(collectedPoints);
    }
}
Private Sub InitializeHitTester(ByVal collectedPoints As StylusPointCollection)
    ' Deselect any selected strokes.
    Dim selectedStroke As Stroke
    For Each selectedStroke In selectedStrokes
        selectedStroke.DrawingAttributes.Color = inkDA.Color
    Next selectedStroke
    selectedStrokes.Clear()


    If mode = InkMode.SelectMode Then

        ' Remove the previously drawn lasso, if it exists.
        If Not (lassoPath Is Nothing) Then
            presenter.Strokes.Remove(lassoPath)
            lassoPath = Nothing
        End If

        selectionTester = presenter.Strokes.GetIncrementalLassoHitTester(80)
        AddHandler selectionTester.SelectionChanged, AddressOf selectionTester_SelectionChanged
        selectionTester.AddPoints(collectedPoints)
    End If

End Sub

Observações

O GetIncrementalLassoHitTester método devolve um IncrementalLassoHitTester que considera a Stroke como "atingido" quando o caminho do laço o rodeia. Isto é útil para implementar funcionalidades, como a possibilidade de selecionar um traço com uma ferramenta de laço. Utiliza InkCanvas um IncrementalLassoHitTester para implementar a ferramenta de seleção do laço.

Aplica-se a