我创建了自己的按钮。不是标准的,PictureBox
里面有两张图片。我需要一个表单中的调用方法,它将我的图片向左转(该方法已完成,此图片处于pictureBox
打开状态)。我试过userControl1.Click
了,但什么也没发生。
我认为这一定是pictureBox
我自己内部的一个事件UserControl
,但我不知道如何调用我的表单中的方法。
我创建了自己的按钮。不是标准的,PictureBox
里面有两张图片。我需要一个表单中的调用方法,它将我的图片向左转(该方法已完成,此图片处于pictureBox
打开状态)。我试过userControl1.Click
了,但什么也没发生。
我认为这一定是pictureBox
我自己内部的一个事件UserControl
,但我不知道如何调用我的表单中的方法。
您必须订阅该事件。看看这个文档;http://msdn.microsoft.com/en-us/library/ms366768(v=vs.80).aspx
如果您这样做是为了让您的旋转图片方法订阅图片元素上的 Click 事件,那么只要单击图片,就会调用该代码。
打开设计器,单击您的按钮。查看描述您的按钮的属性窗口。在顶部,应该有一个看起来像闪电的图标。单击它,您可以看到按钮的事件。你需要一个方法,将按钮链接到事件。要查看涉及的代码,请打开设计器代码并在添加后找到您的图片框。
要查看它是否有效,请尝试在 click 函数中添加 MessageBox.Show("Test") 。
---糟糕,这不适用于您,但可能是有用的信息--
或者,如果您想要一种没有太多解释的简短方法,请在设计器中双击您的按钮,它应该为您创建 Click() 事件。
尝试这个:
public class YourUserControl : UserControl {
public YourUserControl(){
InitializeComponent();
}
private void pictureBox_Click(object sender, EventArgs e){
//your code for pictureBox_Click
OnClick(e);//This is needed if you want to register some Click event handler from ouside your UserControl.
}
}
我认为您不需要在UserControl
这里使用 a ,只需使用 aPictureBox
这样的:
public class MyButton : PictureBox {
public MyButton(){
}
//
protected override void OnClick(EventArgs e){
//Your code here
//base.OnClick(e);
}
}