繁体   English   中英

检查是否调用了button_click事件

[英]check if button_click event was called

我的按钮pict让您选择一些图像。 这是此按钮的click_event

private void picture_Click(object sender, EventArgs e)
        {
            using (OpenFileDialog dlg = new OpenFileDialog())
            {
                dlg.Title = "Open Image";
                dlg.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";

            if (dlg.ShowDialog() == DialogResult.OK)
            {

                pict.Add(new Bitmap(dlg.FileName));
            }
        }
    }

我也有几个带有此按钮的面板。 如果我不使用pict按钮,则它应加载标准图像。 如何知道在Pannel Picture_Click中调用了什么,在什么面板中不知道?(我也想在单击的那些按钮附近放置一个小PictureBox )。 标准图像![在此处输入图像描述] [1]

private void picture_Click(object sender, EventArgs e)
{
    using (OpenFileDialog dlg = new OpenFileDialog())
    {
        dlg.Title = "Open Image";
        dlg.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg *.jpe; *.jfif; *.png";
        if (dlg.ShowDialog() == DialogResult.OK)
        {
            ((Button)sender).Add(new Bitmap(dlg.FileName));
        }
     }
 }

这应该工作得很好。

在那里,我更新了代码,这次希望我做对了。

我不确定这个答案是否会对您有所帮助,但是您可以返回整数之类的东西,而不是代替void。

也许存储在某个数据库或诸如标志之类的东西中。 如果此标志为0,则尚未调用此方法;如果为1,则已调用此方法。

就像是:

private int picture_Click(object sender, EventArgs e)
        {
            using (OpenFileDialog dlg = new OpenFileDialog())
            {
                dlg.Title = "Open Image";
                dlg.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";

                if (dlg.ShowDialog() == DialogResult.OK)
                {
                    pict.Add(new Bitmap(dlg.FileName));
                    return 1;
                }
            }
        }

希望对您有所帮助!

最好的祝福

使用事件处理程序的sender参数的Parent属性来发现面板:

Control myControl = ((Button)sender).Parent;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM