在UserControl中使用Label或DrawString

时间:2008-11-25 15:37:39

标签: c# winforms user-controls

我正在编写自己的控件,其中包含一个包含文本,图像和其他媒体的面板。渲染文本和图像的最佳方法是什么。控件可能包含长文本和许多图像 我应该将文本作为标签和图像添加到PictureBox中,还是应该使用DrawString和DrawImage方法来渲染文本和图像?
最好的方法是什么?

2 个答案:

答案 0 :(得分:2)

如果您使用标签,那么您可以免费获得所有标签。

如果你使用DrawString,它可能会(稍微)更快,但如果你需要处理像文本更改这样的事情,它就会复杂得多。

OnPaint处理程序总是很难写,并且使客户区无效是很难有效的。

为什么不让标签为你处理这一切?

答案 1 :(得分:1)

我会使用DrawString和DrawImage,你可以减少资源,但增加了复杂性。

一旦你进入它,我认为绘制自己的字符串和图像是不好的。

这是一个很好的介绍:

http://www.bobpowell.net/