【发布时间】:2011-08-22 23:47:48
【问题描述】:
我想使用面板上的 Graphics 类来绘制图像,而不是使用“背景”属性设置图像。我如何在 C#.Net 中做到这一点?
【问题讨论】:
-
你的平台是什么?表格? WPF?银光?
-
您是说要手动在面板上绘制而不是为背景属性分配图像吗?你为什么要尝试重新发明轮子?您可以使用背景属性在运行时设置和清除图像。我想我没有看到好处。你能再解释一下原因吗?
我想使用面板上的 Graphics 类来绘制图像,而不是使用“背景”属性设置图像。我如何在 C#.Net 中做到这一点?
【问题讨论】:
您可以尝试以下代码。
public class ImagePanel:Panel
{
private Image image;
public Image Image
{
get { return image; }
set
{
image = value;
Refresh();
}
}
protected override void OnPaint(PaintEventArgs e)
{
if(Image!=null)
{
e.Graphics.DrawImage(this.Image,Point.Empty);
}
base.OnPaint(e);
}
}
【讨论】:
利用System.Drawing.Graphics类来绘制东西。
详情:http://msdn.microsoft.com/en-us/library/system.drawing.graphics.aspx绘图相关
示例:http://www.techotopia.com/index.php/Drawing_Graphics_in_C_Sharp
【讨论】: