C# 无效参数,不确定原因

C# 无效参数,不确定原因,c#,invalid-argument,C#,Invalid Argument,这是我的一些代码。 drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize); 这个代码很好用 但是,一旦我这样做,我就会发现错误,它有一些无效的参数 drawingContext.DrawEllipse(this.handOpenBrush, null, (handPosition.Offset(20,20)), HandSize, HandSize); 我所做的就是用(20

这是我的一些代码。

drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize);
这个代码很好用

但是,一旦我这样做,我就会发现错误,它有一些无效的参数

drawingContext.DrawEllipse(this.handOpenBrush, null, (handPosition.Offset(20,20)), HandSize, HandSize);

我所做的就是用(20,20)偏移手的位置点。我看不出我能做些什么来导致程序突然出现参数错误。

handPosition
是一个

Point.Offset()
是返回void的方法,而不是
,因此参数无效

相反,在调用
drawingContext.DrawEllipse()
之前调用
handPosition.Offset(20,20)
,然后仍然可以将
handPosition
作为第三个参数传入。

不会返回新点-它会变异现有的
点。因此,您需要在调用
drawerlipse
之前对点进行变异:

handPosition.Offset(20,20);
drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize);
或者使用返回新
点的方法:

drawingContext.DrawEllipse(this.handOpenBrush, null, Point.Add(handPosition, new Vector(20,20)), HandSize, HandSize);

您使用的是什么语言和API(实际上是Anthony猜测的C语言吗)?如果你让我们猜的话,你很难得到帮助。还有,这些编译错误是什么类型的“错误”,运行时的错误?错误的实际文本是什么?看看
点。Offset
返回什么(或者更多地返回到它没有返回的点)看看你的“此代码工作正常”pline只有常识是
手定位。Offset
导致错误你能显示所有相关的代码吗?也许你正在放置
(手定位。Offset(20,20))
不需要第一个