我尝试从单击图像的位置获取Heu值,但是我做错了什么,我不确定它是什么,它与设计器文件有关,以及我如何调用函数_mousedown图像。
在我的main.designer.cs文件中我有:
// pictureBox1
//
this.pictureBox1.Location = new System.Drawing.Point(146, 30);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(640, 480);
this.pictureBox1.TabIndex = 1;
this.pictureBox1.TabStop = false;
//line below is not accepted ??
this.pictureBox1.MouseDown += new System.EventHandler(this.pictureBox1_MouseDown);
在我的主程序中我有:
private void pictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
System.Drawing.Point Cursor = new System.Drawing.Point(e.X, e.Y);
Color pixel = myImage.GetPixel(Cursor.X, Cursor.Y);
textBoxH.Text =pixel.GetHue().ToString();
}
我得到的错误是:
*'System.Windows.Forms.PictureBox'不包含'pictureBox1_MouseDown'的定义,并且没有扩展方法'pictureBox1_MouseDown'接受类型'System.Windows.Forms.PictureBox'的第一个参数可以找到
您是否缺少using指令或程序集引用?)
C:\ projects \ visual studio 2010 \ Projects \ image \ Main.Designer.cs **
注意我已将using System;
包含在我的主程序中。
* 更新 * 编译后我现在得到一个不同的错误(没有更改代码)
错误1“pictureBox1_MouseDown”没有重载与委托'System.EventHandler'相匹配
答案 0 :(得分:0)
在我看来,您可以手动将更改编码到设计器文件中。如果你这样做,那就停止这样做:不应该触及设计器生成的代码,因为VS会搞砸它。
无论如何,这不是鼠标按下事件的正确定义。
以下内容:
this.pictureBox1.MouseDown += new System.EventHandler(this.pictureBox1_MouseDown);
应该是:
this.pictureBox1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseDown);