2010-05-19 40 views
0

我已創建自定義控制在.NET 3.5的Winforms固定在定製形控制

從面板繼承所述面板具有一個自定義的多邊形邊界,它來自一個的PointF陣列(在圖中,控制被突出顯示單邊框黃色)。

圖1顯示了帶BorderStyle的控件無。圖2帶有BorderStyle的固定單一

如圖2所示,邊界遵循邊界控制的Rectangle。有沒有辦法讓邊界跟隨由多邊形設置的控制的實際邊界?

FYI多邊形是使用GraphicsPath對象創建的。

繪圖與GDI +的行不起作用,作爲控制剪輯的行,它看起來可怕...

alt text http://poseidon.toop.com.au/noBorder.PNG

FIG1


alt text http://poseidon.toop.com.au/withBorder.PNG

Fig2

回答

1

我會做對點進行變換(放大),然後使用Graphics.DrawPolygon(畫筆,點)使用變換後的點,或者可以做相反的操作(用黑色填充,然後變換(放大),然後再繪製更小的與黃色。