我必须在.Net中编写一个简单的控件来绘制看起来像下面的图像的几何图形,并且几何图形不会比这个图像中显示的更复杂,即它将是一些填充的多边形和一些虚线。然而,这不是一个静态的图像,它只画一次就会被遗忘。用户可以更改几何图形的尺寸,这些尺寸必须通过更新来反映在图纸中。

我的学长说我应该用WPF来画画。我的问题是,WPF对于这类工作是不是太过了,System.Drawing就足够了吗?
发布于 2009-01-09 12:25:08
虽然WPF可能确实具有绘图功能,但它实际上是一个与WinForms完全不同的UI工具包。如果你计划最终将你的应用程序移植到WPF上,我可以看到用它来绘制你的图像,但除此之外,我真的不明白为什么你要引入WPF来绘制一个图像。在我看来,这有点过火了。
你可以在MSDN或WindowsClient.net上找到更多关于WPF的信息。
发布于 2009-01-09 12:55:57
事实上,你不能根据你是否想要绘制上面的东西来决定是否使用WPF / Winform。您将能够在System.Drawing中绘制上述内容,而不会有太多问题。
更有趣的是:上面的伪像是由一些复杂的对象表示的吗?在这种情况下,您可以教WPF仅以上述方式呈现所述对象。如果你有一个动态改变基本尺寸的程序,那么你可以告诉WPF,如果你改变了对象中的这些值,那么它的显示也必须改变。
总而言之,这两种技术有很大的不同,然而,我认为WPF是更完整的一种-尽管如此,考虑到与其可能性相比,WPF的采用速度是多么缓慢,我个人认为WPF来得太早了几年。
发布于 2009-01-09 13:05:08
WPF是标准GUI控件(按钮、文本框等)的新框架但对于绘制自定义图像,特别是如果它们不是控件,它实际上与WinForms相同。
由于WinForms使用GDI绘制而WPF使用DirectX绘制,因此存在一些绘制差异,但对于直接绘制,两者基本上是等效的。
现在,如果绘图是交互式控件,则WPF具有优势,因为自定义标准控件的绘图比在WinForms中容易得多。
因此,问题就变成了,绘图是做什么的?如果你只需要改变它的外观,一个标准的控件可以做同样的功能吗?如果是这样,那么WPF就是您所需要的。
https://stackoverflow.com/questions/427848
复制相似问题