public void changepage(int mpagenum) { if (this.pagenum != mpagenum) { this.pagenum = mpagenum; if (this.pagenum >= this.strokes_page_all.Count) { var numadd = this.pagenum - this.strokes_page_all.Count + 1; for (int i = 0; i < numadd; i++) { var pagetemp = new ZBBPage(); pagetemp.lines.Add(new ZBBPageStep()); strokes_page_all.Add(pagetemp); } } var page = strokes_page_all[this.pagenum]; if (page != null) { if (page.lines.Last().lines_curr.Count > 0) { undoOrRedo += 1; } if (m_canvas.Strokes.Count > 0) { undoOrRedo += 1; m_canvas.Strokes.Clear(); } m_canvas.Strokes.Add(page.lines.Last().lines_curr); } } }
public ZJBlackboardNew(InkCanvas canvas) { this.m_canvas = canvas; var page = new ZBBPage(); page.lines.Add(new ZBBPageStep()); strokes_page_all.Add(page); if (canvas != null) { canvas.EditingMode = InkCanvasEditingMode.Ink; DrawingAttributes drawingAttributes = new DrawingAttributes(); canvas.DefaultDrawingAttributes = drawingAttributes; drawingAttributes.Color = Colors.White; drawingAttributes.FitToCurve = true; drawingAttributes.IgnorePressure = false; canvas.Strokes.StrokesChanged += Strokes_StrokesChanged; canvas.StrokeCollected += Canvas_StrokeCollected; canvas.StrokeErasing += Canvas_StrokeErasing; canvas.StrokeErased += Canvas_StrokeErased; canvas.MouseUp += Canvas_MouseUp; } }