Aracılığıyla paylaş


StrokeCollection.HitTest Yöntem

Tanım

Belirtilen alanın içinde yer alan vuruşlar koleksiyonunu döndürür.

Aşırı Yüklemeler

HitTest(Rect, Int32)

Belirtilen dikdörtgen içinde en az belirtilen uzunluk yüzdesine sahip vuruşlardan oluşan bir koleksiyon döndürür.

HitTest(Point, Double)

Belirtilen alanı kesiştiren bir vuruş koleksiyonu döndürür.

HitTest(IEnumerable<Point>, StylusShape)

Belirtilen yol ile kesişen bir vuruş koleksiyonu döndürür.

HitTest(IEnumerable<Point>, Int32)

Belirtilen alan içinde en az belirtilen uzunluk yüzdesine sahip vuruşlar koleksiyonunu döndürür.

HitTest(Point)

Belirtilen noktayı kesiştiren bir vuruş koleksiyonu döndürür.

HitTest(Rect, Int32)

Belirtilen dikdörtgen içinde en az belirtilen uzunluk yüzdesine sahip vuruşlardan oluşan bir koleksiyon döndürür.

public:
 System::Windows::Ink::StrokeCollection ^ HitTest(System::Windows::Rect bounds, int percentageWithinBounds);
public System.Windows.Ink.StrokeCollection HitTest (System.Windows.Rect bounds, int percentageWithinBounds);
member this.HitTest : System.Windows.Rect * int -> System.Windows.Ink.StrokeCollection
Public Function HitTest (bounds As Rect, percentageWithinBounds As Integer) As StrokeCollection

Parametreler

bounds
Rect

Rect Test edilecek sınırları belirten bir.

percentageWithinBounds
Int32

Vuruş olarak kabul edilmesi için sınırların içinde bulunması gereken bir Vuruşun gereken en düşük uzunluğu.

Döndürülenler

StrokeCollection

StrokeCollection içinde en az belirtilen yüzdeye sahip vuruşları olan Rectbir.

Örnekler

Aşağıdaki örnek, sınırları içinde en az %50 olan vuruşları Rectsiler. Bu örnekte adlı presenterbir InkPresenter olduğu varsayılır.

Rect rect = new Rect(100, 100, 200, 200);
StrokeCollection strokes = presenter.Strokes.HitTest(rect, 50);

presenter.Strokes.Remove(strokes);
Dim rect As Rect = New Rect(100, 100, 200, 200)
Dim strokes As StrokeCollection = presenter.Strokes.HitTest(rect, 50)

presenter.Strokes.Remove(strokes)

Şunlara uygulanır

HitTest(Point, Double)

Belirtilen alanı kesiştiren bir vuruş koleksiyonu döndürür.

public:
 System::Windows::Ink::StrokeCollection ^ HitTest(System::Windows::Point point, double diameter);
public System.Windows.Ink.StrokeCollection HitTest (System.Windows.Point point, double diameter);
member this.HitTest : System.Windows.Point * double -> System.Windows.Ink.StrokeCollection
Public Function HitTest (point As Point, diameter As Double) As StrokeCollection

Parametreler

point
Point

Isabet Point testi.

diameter
Double

Teste isabet etmek için çevresindeki Point alanın boyutu.

Döndürülenler

StrokeCollection

Belirtilen noktayı kesiştiren nesne koleksiyonu Stroke .

Örnekler

Aşağıdaki örnek, belirtilen Pointile kesişen vuruşların nasıl alındığını gösterir. Bu örnekte adlı presenterbir InkPresenter olduğu varsayılır.

// Change the color of all the strokes at the specified position.
public void SelectStrokes(Point position)
{
    StrokeCollection selected = presenter.Strokes.HitTest(position, 5);

    foreach (Stroke s in selected)
    {
        s.DrawingAttributes.Color = Colors.Purple;
    }
}
' Change the color of all the strokes at the specified position.
Public Sub SelectStrokes(ByVal position As Point)

    Dim selected As StrokeCollection = presenter.Strokes.HitTest(position, 5)

    Dim s As Stroke
    For Each s In selected
        s.DrawingAttributes.Color = Colors.Purple
    Next s

End Sub

Şunlara uygulanır

HitTest(IEnumerable<Point>, StylusShape)

Belirtilen yol ile kesişen bir vuruş koleksiyonu döndürür.

public:
 System::Windows::Ink::StrokeCollection ^ HitTest(System::Collections::Generic::IEnumerable<System::Windows::Point> ^ path, System::Windows::Ink::StylusShape ^ stylusShape);
public System.Windows.Ink.StrokeCollection HitTest (System.Collections.Generic.IEnumerable<System.Windows.Point> path, System.Windows.Ink.StylusShape stylusShape);
member this.HitTest : seq<System.Windows.Point> * System.Windows.Ink.StylusShape -> System.Windows.Ink.StrokeCollection
Public Function HitTest (path As IEnumerable(Of Point), stylusShape As StylusShape) As StrokeCollection

Parametreler

path
IEnumerable<Point>

Test edilecek yolu temsil eden yazılacak Point bir dizi.

stylusShape
StylusShape

şeklini StylusShape eraserPathbelirten.

Döndürülenler

StrokeCollection

StrokeCollection ile pathkesişen vuruşların bir örneği.

Örnekler

Aşağıdaki örnek, dizi tarafından Point oluşturulan yolu kesiştiren tüm vuruşların rengini değiştirir. Bu örnekte adlı presenterbir InkPresenter olduğu varsayılır.

private void HitTestWithEraser(Point[] points)
{
    RectangleStylusShape eraser = new RectangleStylusShape(3, 3, 0);

    StrokeCollection strokes = presenter.Strokes.HitTest(points, eraser);

    foreach (Stroke s in strokes)
    {
        s.DrawingAttributes.Color = Colors.Purple;
    }
}
Private Sub HitTestWithEraser(ByVal points() As Point)
    Dim eraser As RectangleStylusShape = New RectangleStylusShape(3, 3, 0)

    Dim strokes As StrokeCollection = presenter.Strokes.HitTest(points, eraser)

    Dim s As Stroke
    For Each s In strokes
        s.DrawingAttributes.Color = Colors.Purple
    Next
End Sub

Şunlara uygulanır

HitTest(IEnumerable<Point>, Int32)

Belirtilen alan içinde en az belirtilen uzunluk yüzdesine sahip vuruşlar koleksiyonunu döndürür.

public:
 System::Windows::Ink::StrokeCollection ^ HitTest(System::Collections::Generic::IEnumerable<System::Windows::Point> ^ lassoPoints, int percentageWithinLasso);
public System.Windows.Ink.StrokeCollection HitTest (System.Collections.Generic.IEnumerable<System.Windows.Point> lassoPoints, int percentageWithinLasso);
member this.HitTest : seq<System.Windows.Point> * int -> System.Windows.Ink.StrokeCollection
Public Function HitTest (lassoPoints As IEnumerable(Of Point), percentageWithinLasso As Integer) As StrokeCollection

Parametreler

lassoPoints
IEnumerable<Point>

Test edilecek alanın sınırlarını temsil eden tür Point dizisi.

percentageWithinLasso
Int32

değerinin içermesi Strokeiçin lassoPoints yüzde olarak kabul edilebilir uzunluğu.

Döndürülenler

StrokeCollection

StrokeCollection Dizi içinde Point en az belirtilen yüzdeye sahip vuruşları olan bir.

Özel durumlar

lassoPoints, null değeridir.

-veya- percentageWithinLasso, null değeridir.

lassoPoints boş bir dizi içerir.

percentageWithinLasso 0'dan küçük veya 100'den büyük.

Örnekler

Aşağıdaki örnekte, belirtilen kement içinde en az yüzde 80 olan tüm vuruşların bir StrokeCollectioniçinden nasıl kaldırılacağı gösterilmektedir. Bu, özel denetim kullanıcının kementli mürekkep seçmesine olanak sağladığında kullanışlıdır. Kullanıcının kementli mürekkep seçmesini sağlayan bir denetim oluşturmak için bkz . Nasıl yapılır: Özel Denetimden Mürekkep Seçme.

// Remove the strokes within the lasso from the InkPresenter
public void RemoveStrokes(Point[] lasso)
{
    StrokeCollection strokes = presenter.Strokes.HitTest(lasso, 80);

    presenter.Strokes.Remove(strokes);
}
' Remove the strokes within the lasso from the InkPresenter
Public Sub RemoveStrokes(ByVal lasso As Point())

    If lasso Is Nothing Then
        Return
    End If

    Dim strokes As StrokeCollection = _
        presenter.Strokes.HitTest(lasso, 80)

    presenter.Strokes.Remove(strokes)

End Sub

Şunlara uygulanır

HitTest(Point)

Belirtilen noktayı kesiştiren bir vuruş koleksiyonu döndürür.

public:
 System::Windows::Ink::StrokeCollection ^ HitTest(System::Windows::Point point);
public System.Windows.Ink.StrokeCollection HitTest (System.Windows.Point point);
member this.HitTest : System.Windows.Point -> System.Windows.Ink.StrokeCollection
Public Function HitTest (point As Point) As StrokeCollection

Parametreler

point
Point

Teste ulaşma noktası.

Döndürülenler

StrokeCollection

Belirtilen noktayı kesiştiren nesne koleksiyonu Stroke .

Örnekler

Aşağıdaki örnek, belirtilen Pointile kesişen vuruşların nasıl alındığını gösterir. Bu örnekte adlı presenterbir InkPresenter olduğu varsayılır.

// Change the color of all the strokes at the specified position.
public void SelectStrokes(Point position)
{
    StrokeCollection selected = presenter.Strokes.HitTest(position, 5);

    foreach (Stroke s in selected)
    {
        s.DrawingAttributes.Color = Colors.Purple;
    }
}
' Change the color of all the strokes at the specified position.
Public Sub SelectStrokes(ByVal position As Point)

    Dim selected As StrokeCollection = presenter.Strokes.HitTest(position, 5)

    Dim s As Stroke
    For Each s In selected
        s.DrawingAttributes.Color = Colors.Purple
    Next s

End Sub

Şunlara uygulanır