以下是我的一些代码。
drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize);
该代码工作正常。
尽管如此,一旦我这样做,我就会得到它有一些无效参数的错误。
drawingContext.DrawEllipse(this.handOpenBrush, null, (handPosition.Offset(20,20)), HandSize, HandSize);
我正在做的是将handPosition点偏移(20,20)。我没有看到我能做什么导致程序突然出现参数错误。
答案 0 :(得分:2)
Point.Offset
未返回新点 - 突变现有Point
。所以你需要在调用DrawEllipse
之前改变点:
handPosition.Offset(20,20);
drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize);
或使用 返回新Point
:
drawingContext.DrawEllipse(this.handOpenBrush, null, Point.Add(handPosition, new Vector(20,20)), HandSize, HandSize);
答案 1 :(得分:0)
handPosition
是Point
。
Point.Offset()
是一个返回void的方法,而不是Point
,因此该参数无效。
相反,请在handPosition.Offset(20,20)
调用之前致电drawingContext.DrawEllipse()
,然后您仍然可以将handPosition
作为第三个参数传递。