参数无效,不确定原因

时间:2014-10-02 21:20:54

标签: c# invalid-argument

以下是我的一些代码。

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

该代码工作正常。

尽管如此,一旦我这样做,我就会得到它有一些无效参数的错误。

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

我正在做的是将handPosition点偏移(20,20)。我没有看到我能做什么导致程序突然出现参数错误。

2 个答案:

答案 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)

handPositionPoint

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

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