圆角矩形用户控件,非一致弧

时间:2012-03-14 10:22:13

标签: c# winforms c#-4.0

我试图为usercontrol创建一个圆角矩形,但addarc()不一致。我找到了以下链接并且一直试图重新创建LarsTech在c#中提到的内容,但迄今为止都没有成功。如果有人能给我一些关于如何在c#中实现这一点的指示,我将不胜感激。感谢。

LarsTech's Post

1 个答案:

答案 0 :(得分:2)

如果你想重现这个:

Private Sub DrawRoundRect(ByVal g As Graphics, ByVal r As Rectangle)
  Dim hDC As IntPtr = g.GetHdc
  Dim hPen As IntPtr = CreatePen(PS_SOLID, 0, ColorTranslator.ToWin32(Color.Red))
  ...
End Sub

您需要在C#中使用不安全的代码。如果你之前没有这么做的话,这并不是一件容易的事,但也许很难学(你迟早需要它)。从有关Platform Invoke(MSDN)的文档开始。你可以做编码。你可以在这里找到所有函数P/Invokehttp://www.pinvoke.net/以节省一些输入。

P/Invoke教程:http://msdn.microsoft.com/en-us/library/aa288468%28v=vs.71%29.aspx