单击我的UserControl时调用表单上的方法

时间:2013-06-11 17:49:16

标签: c# winforms user-controls

我创建了自己的按钮。不标准,它是PictureBox里面有两张照片。我需要一个表单中的调用方法,它会将我的图片保留为左(方法已完成,此图片位于表单上的pictureBox中)。我试过了userControl1.Click,但什么都没发生。

我认为它必须是我自己pictureBoxUserControl上的一个事件,但我不知道如何调用我的形式的方法。

3 个答案:

答案 0 :(得分:0)

您必须订阅该活动。看看这个文档; http://msdn.microsoft.com/en-us/library/ms366768(v=vs.80).aspx

如果您这样做,那么旋转图片的方法会订阅图片元素上的Click事件,那么只要点击图片就会调用该代码。

答案 1 :(得分:0)

打开设计师,点击你的按钮。查看描述按钮的属性窗口。在顶部,应该有一个闪电图标。单击该按钮,您可以看到该按钮的事件。你需要一个方法,将按钮链接到事件。要查看所涉及的代码,请在添加后打开设计器代码并找到您的图片框。

要查看它是否有效,请尝试在点击功能中添加MessageBox.Show(“Test”)。

---糟糕,这不适用于您,但可能是有用的信息 -

或者,如果你想要一个无法解释的简短方法,请双击设计器中的按钮,它应该为你创建Click()事件。

答案 2 :(得分:0)

试试这个:

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,只需使用这样的PictureBox

public class MyButton : PictureBox {
    public MyButton(){

    }
    //
    protected override void OnClick(EventArgs e){
        //Your code here
        //base.OnClick(e);
    }
}