2009-09-09 36 views

回答

29

想必它被認爲是不夠有用,值得包容。

,如果你想,但(如果你在使用C 3#),你可以很容易地將其添加爲一個擴展方法:

public static Point Center(this Rectangle rect) 
{ 
    return new Point(rect.Left + rect.Width/2, 
        rect.Top + rect.Height/2); 
} 

注意,由於該值表示爲整數,你可以很容易地結束瞭如果要返回Point而非使用decimaldouble的其他結構,則會得到非精確的值。

以上實際爲System.Drawing.Rectanglestruct。如果您正在討論不同的矩形,請添加適當的信息,然後編輯我的答案。

+0

如何將此擴展添加到System.Drawing.Rectangle? – CallMeLaNN 2011-02-24 10:30:08

+1

@CallMeLaNN:只需將其聲明爲靜態,非泛型,頂級類。有關更多詳細信息,請閱讀有關一般擴展方法的信息,例如在MSDN中。 – 2011-02-24 10:32:12

+0

http://connect.microsoft.com/VisualStudio/feedback/details/93879/system-drawing-rectangle-needs-centerpoint-property是它正式提出的地方。 – Stobor 2011-07-30 09:09:21

5

它存在於(不再受支持的)Microsoft.XNA.Framework中。

Rectangle.Center Property

myRectangle.Center返回Point

+0

在哪個版本? .net 5? – Benny 2014-05-19 08:25:43

+0

4.5.51641有它。不知道何時添加。 – Evorlor 2014-05-20 00:14:32

+0

你指的是哪一種確切類型?鏈接將很有用。 – 2014-07-13 07:08:39

相關問題