WPF中Canvas画布怎么逐笔清除和清空画布?

WPF中Canvas画布怎么逐笔清除和清空画布?
protected override void OnStrokeCollected(InkCanvasStrokeCollectedEventArgs e)
{
base.Strokes.Remove(e.Stroke); //使用此方法时,请删除之前添加到 InkCanvas 的原始笔划
CustomStroke item = new CustomStroke(e.Stroke.StylusPoints);
base.Strokes.Add(item);
InkCanvasStrokeCollectedEventArgs args = new InkCanvasStrokeCollectedEventArgs(item);
base.OnStrokeCollected(args);
}

            输出Strokes中为空是为什么,在其他位置调用inkCanvas.Strokes.Clear();没有用。

5个回答

如果是需要用brush进行erase那么用System.Windows.Controls.InkCanvasEditingMode.EraseByStroke
如果是希望Clear的话,用Strokes.Clear即可
Strokes是指和InkCanvas binding的对象

在protected override void OnStrokeCollected(InkCanvasStrokeCollectedEventArgs e){}方法外调用Strokes.Clear()时,画布没有清空,而且Strokes为空,该折磨操作

inkCanvas.EditingMode = InkCanvasEditingMode.EraseByPoint;

inkCanvas.EditingMode = InkCanvasEditingMode.EraseByStroke;

是怎么操作的

已经解决,靠人不如靠己啊

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐