绘制事件

问题描述:

我在我的申请下列控制,绘制事件

  • 用户控制包括一个面板的
  • 的“打开”按钮 我使用Paint事件来绘制图像(浏览并使用OpenFileDialog进行选择)。它适用于第一张图片。如果我使用OpenFileDialog打开第二张图像,则控件中不显示大小为OpenFileDialog的部分。使用Paint事件是否有问题?
+1

您是否考虑过使用PictureBox来绘制图片? – 2011-05-11 09:46:52

使用本再次自动调用指定控件的绘画事件。

我想你必须在OpenFileDialog关闭后手动调用面板的更新方法。

我觉得这是更好的:

myUserControl.Invalidate() 

Invalidate方法:为您处理它的油漆event.if控制是你usercontroll 只要做到这一点对话框后,控制

//you have a picturebox in the form pictureBox1 
// openFileDialog ofd 

if (ofd.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) 
{ 
    this.pictureBox1.Image = new BitMap(ofd.FileName); 
}