StylusPointCollection.Add Method (StylusPointCollection)
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Adds a collection of StylusPoint objects to the collection.
Assembly: System.Windows (in System.Windows.dll)
Parameters
- stylusPoints
- Type: System.Windows.Input.StylusPointCollection
The collection of StylusPoint objects to add to the collection.
A StylusPointCollection can belong to more than one Stroke object.
The following code example iterates through stylus points of the strokes drawn in the first InkPresenter control to display its mirror image in the second InkPresenter control.
Stroke MyStroke; //A new stroke object named MyStroke is created. MyStroke is added to the StrokeCollection of the InkPresenter named MyIP1 private void MyIP1_MouseLeftButtonDown(object sender, MouseEventArgs e) { MyIP1.CaptureMouse(); StylusPointCollection MyStylusPointCollection = new StylusPointCollection(); MyStylusPointCollection.Add(e.StylusDevice.GetStylusPoints(MyIP1)); MyStroke = new Stroke(MyStylusPointCollection); MyIP1.Strokes.Add(MyStroke); } //StylusPoint objects are collected from the MouseEventArgs and added to MyStroke private void MyIP1_MouseMove(object sender, MouseEventArgs e) { if (MyStroke != null) MyStroke.StylusPoints.Add(e.StylusDevice.GetStylusPoints(MyIP1)); } //MyStroke is completed private void MyIP1_LostMouseCapture(object sender, MouseEventArgs e) { MyStroke = null; } //Create the mirror image of the stroke collection in MyIP1 and adding it to MyIP2 private void BtMirror_Click(object sender, EventArgs e) { //Iterate through the Strokes in the StrokeCollection of MyIP1 foreach (Stroke stroke in MyIP1.Strokes) { StylusPointCollection newcollection = new StylusPointCollection(); //Iterate through the stylus points of each stroke in MyIP1 foreach (StylusPoint p in stroke.StylusPoints) { //Create the mirror image StylusPoint newpoint = new StylusPoint(); newpoint.X = MyIP1.ActualWidth - p.X; newpoint.Y = p.Y; newcollection.Add(newpoint); } //Add the mirror image to MyIP2 Stroke newStroke = new Stroke(newcollection); MyIP2.Strokes.Add(newStroke); } }
Show: